Symfony 1.4: для форм, в действии, удаление полей - PullRequest
0 голосов
/ 31 декабря 2011

У меня есть моя форма в моем действии:

$ this-> form = new SomeForm ($ this-> data);

форма содержит множество полей, которые я не делаюнужно для одного действия, но есть вещи, необходимые для другого действия.Каков наилучший способ справиться с этим?Создать индивидуальную форму для каждой необходимости или динамически удалить поля, когда я создаю ее экземпляр, как указано выше?

Спасибо

Ответы [ 2 ]

0 голосов
/ 02 января 2012

По моему мнению, для этого случая, расширяя форму для каждой потребности и применяя, через переопределение настройки, выборочно инструкцию unset, вы получаете код, который становится немного более читабельным и обслуживаемым.

0 голосов
/ 01 января 2012

Похоже, вы делаете форму из нескольких частей.

Я предполагаю, что вы хотите проверить все значения, представленные в вашей форме, но не сохраните их.

  1. Звучит так, будто вы создаете абстрактную форму, поэтому не расширяйте форму базового объекта, а расширьте BaseForm.
  2. Не сбрасывайте значения, используйте форму для их проверки, даже если они будут использоваться позже.
  3. Они сохраняются в объекте формы, так что вы можете использовать это для передачи значений в ваше следующее действие, так что это полезно, плюс они проверены.
  4. Переопределите doSave () в форме, чтобы сохранить объекты формы, которую вы хотите сохранить.
...