Подтвердить поле в зависимости от другого значения поля в Symfony

82
11

У меня есть два связанных поля в форме Symfony: object_status и cryopreservation_method.


Первый не может быть нулевым и сохраняет один из трех возможных вариантов: liquid, solid или cryopreserved.


Второй должен быть установлен только в том случае, если запись имеет object_status, установленную на 'cryopreserved'. В противном случае это NULL.


Как я могу проверить это на стороне сервера (не с Javascript) перед сохранением формы? Я попытался проверить нулевые или пустые значения в модели, но не повезло.

спросил(а) 2011-06-22T17:57:00+04:00 9 лет, 3 месяца назад
1
Решение
80

Вам нужно создать условный валидатор. Это можно сделать с помощью sfValidatorCallback (проще, чем создание нового валидатора). Проверьте этот пример в Поваренной книге Symfony (для 1.2, но работает в версии 1.4).

ответил(а) 2011-06-22T20:36:00+04:00 9 лет, 3 месяца назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема