Шаблон формы динамической модели Symfony - PullRequest
0 голосов
/ 20 июня 2011

Я занимаюсь разработкой веб-приложения на основе Symfony.У меня много моделей (ноутбук, нетбук, Ipad, планшет .... все эти модели унаследованы от модели продукта). На этих моделях у меня также есть формы (LaptopForm, NetbookForm ... и так далее).В моем классе действий я получаю Имя модели и назначаю его шаблону:

 $modelForm = $this->modelName.'Form';

 $this->form = new $modelForm();

Затем в моем шаблоне я делаю это <?php echo $form ?> .. Нет проблем, он печатает все поля и метки в HTML-таблице.

Но моя проблема в том, что я хочу разделить шаблон на две части.Общие и специальные поля. В общих полях я хочу отобразить поля модели продукта (имя, цена ...). Но набор специальных полей изменяется в зависимости от типа продукта.Как мне справиться с этим набором специальных полей? Может кто-нибудь дать подсказку или источник, пожалуйста?

Заранее спасибо!

1 Ответ

1 голос
/ 21 июня 2011

Вы можете управлять им вручную, в своем специализированном классе форм (без изменения базового класса).
Возможно, с использованием sfWidgetFormSchema:
http://www.symfony -project.org / forms / 1_4/ en / A-Widgets # chapter_a_sfwidgetformschema Вы должны назвать виджет 'general' и 'special' для повторного использования стандартного шаблона в шаблоне формы, например:

<?php echo $form['general'] ?>
<?php echo $form['special'] ?>
...