Я работаю с Symfony PHP. У меня есть флажок, и в зависимости от его проверки или нет, я хочу отобразить combobox в форме. Если флажок установлен, я хочу отобразить комбо со всеми параметрами, но если он не установлен, я хочу отключить комбо, но виджет должен иметь значение по умолчанию или жестко запрограммированное, когда форма сохраняется. Я не знаю, как это сделать, потому что когда я отключил функцию combobox, форма сохраняет виджет как null, и я не могу установить предопределенное значение. Кто-нибудь может мне помочь?Установите значение по умолчанию для виджета, если оно не установлено в форме (PHP Symfony)
0
A
ответ
1
Вы можете изменить представленные данные формы в методе bind(). Используйте это, если вы хотите изменить поведение формы в зависимости от того, какой пользователь выбрал/отправил.
Если вы хотите изменить способ изменения объекта после того, как данные формы были проверены и готовы к сохранению в базе данных, ознакомьтесь с методом updateObject().
class myForm
{
public function configure()
{
// configuration
}
public function bind($taintedValues = array(), $taintedFiles = array())
{
// I can alter the behaviour of the form here, depending on the data submitted
if (isset($taintedValues['do_not_store_my_personal_details'])) {
// Change the value of a form field. If the form doesn't pass validation, the user will see any information entered into the phone_number fields has been deleted
$taintedValues['phone_number'] = null;
}
return parent::bind($taintedValues, $taintedFiles);
}
public function updateObject($values = null)
{
if ($values === null) {
$values = $this->getValues();
}
// Override the data stored with the object
if ($values['do_not_store_my_personal_details'] == true) {
$values['phone_number'] = null;
}
return parent::updateObject($values);
}
Смежные вопросы
- 1. Подтвердить входное значение, если оно неправильное, чем установлено по умолчанию
- 2. Как установить значение по умолчанию в форме, если оно исключено?
- 3. combobox не показывает значение по умолчанию, даже если оно установлено в выпадающем списке в vb.net.
- 4. Symfony формы: как установить значение по умолчанию для TEXTAREA виджета
- 5. Установите значение по умолчанию для полей в форме, аналогичном фильтру
- 6. Установите значение по умолчанию для атрибута datetime в простой форме
- 7. Убедитесь, что значение находится в наборе, и установите значение по умолчанию, если оно не
- 8. Как эхо значение по умолчанию, если значение не установлено. Лезвие
- 9. Выпадающее меню загружается как-если оно по умолчанию установлено
- 10. Имеет ли значение обратной связи значение по умолчанию в oracle, если да, где оно установлено?
- 11. Значение по умолчанию в объекте, если оно не существует
- 12. Функция PHP: возвращает значение объекта, если оно установлено
- 13. Checkbox в Rails форме: по умолчанию, чтобы проверили, если значение не установлено
- 14. Почему значение AutoDetectChangesEnabled не установлено по умолчанию?
- 15. проверка Linq, если значение существует иное установлено значение по умолчанию
- 16. Где JavaDocs, сгенерированные Gradle, если значение по умолчанию не установлено?
- 17. Collection_Select Значение по умолчанию не установлено
- 18. Значение по умолчанию, если оно не существует на карте
- 19. Попытка установить значение флажка по умолчанию, если оно не отмечено
- 20. Настройки Django.DataABASE 'значение по умолчанию' не установлено
- 21. Symfony 2 Выбор поля Значение по умолчанию
- 22. Как сделать значение по умолчанию для jTextField, если оно пусто
- 23. Значение значения по умолчанию MVC по умолчанию не установлено
- 24. Установите значение по умолчанию для переменной jquery
- 25. Установите значение столбца в значение по умолчанию
- 26. Установите значение по умолчанию для всех столбцов в базе данных
- 27. Установите значение по умолчанию для ввода текста
- 28. ExtJS xtype timefield - установлено значение по умолчанию
- 29. Изображение по умолчанию не установлено
- 30. Значение по умолчанию SharedPreference установлено странно