後顯示舊值我有很多的複選框一個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