В Symfony 1.4.11 у меня есть логическое поле, которое устанавливается в форме с помощью флажка HTML. Когда значение равно 0 (не отмечено), HTML-код флажка равен
<input type="checkbox" value="" name="gift_type[valid]">
Когда я пытаюсь сохранить его, он всегда сохраняется как ноль, я предполагаю, потому что вход не имеет значения.
Код, который я использую для этого флажка, генерируется генератором администратора Symfony, поэтому я подумал, что он будет работать "из коробки". Если я уберу галочку с истинного значения, оно будет работать, как и ожидалось.
schema.yml
GiftType:
columns:
valid: { type: boolean, notnull: true, default: true }
BaseGiftTypeForm.class.php
$this->setWidgets(array(
'valid' => new sfWidgetFormInputCheckbox()
));
$this->setValidators(array(
'valid' => new sfValidatorBoolean(array('required' => false))
));