form_widget движка шаблона веток - PullRequest
       24

form_widget движка шаблона веток

1 голос
/ 22 сентября 2011

Я сейчас обновляю PHP-приложение, чтобы оно использовало очень красивый шаблонный движок .

Я понял, как решить эту проблему. Приложение имеет собственный набор классов форм, разработанных пользователем. По сути, можно программно добавлять поля, устанавливать методы и действия для объекта формы. Как только это будет сделано, вызывается метод render(), который затем выдает сгенерированный HTML-фрагмент для формы.

Мне удалось вывести форму в шаблон, используя фильтр raw, например:

{{ form|raw }}

Хотя это работает хорошо, я заметил, что в symfony2 есть метод, называемый form_widget () , который специально работает с рендерингом форм без необходимости вывода в виде raw.

Я хотел бы адаптировать приложение так, чтобы я мог использовать form_widget(), однако я не могу найти какую-либо подробную документацию по нему. Кто-нибудь может указать, как данные должны передаваться в form_widget() без использования платформы symphony2? Будь то массив, объект или что-то еще?

1 Ответ

1 голос
/ 22 сентября 2011

Посмотрев на обход исходного кода Symphony, похоже, что все, что они сделали, создали расширение, чтобы формы отображались в виде HTML:

'form_widget' => new \Twig_Function_Method($this, 'renderWidget', array('is_safe' => array('html'))),

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

...