后显示旧值我有很多的复选框一个symfony的形式:Symfony的形式:节能
$this->form = new SocialSettingsForm($user);
if ($request->isMethod(sfRequest::POST)) {
$this->form->bind($request->getParameter('social'));
if ($this->form->isValid()) {
$this->form->save();
$this->success = true;
}
}
的问题是:保存表单后,复选框古怪
行为如果用户检查一个,它会在保存后出现检查(正常行为) 但是,如果用户未选中一个,它仍然会在保存后出现检查。
我做了一个var_dump的表单值,unchecked复选框有一个NULL值,所以我不知道为什么他们仍然检查。
感谢您的帮助。
这似乎是一个symfony错误:http://www.devexp.eu/2009/04/23/sfwidgetforminputcheckbox-unchecked-bug/ – Intrepidd
事实证明,symfony不会在绑定时重置复选框的“checked”属性,所以一个复选框将永远不会被视为未经检查绑定 – Intrepidd