Пользовательский рендеринг виджета форм Symfony - PullRequest
2 голосов
/ 11 мая 2011

Я ищу способ автоматизации вывода формы в формате json вместо html.Я использую JQuery dform http://plugins.jquery.com/project/dform для создания динамических форм.

Пример вывода:

{"type": "p", "html": "Вы должныlogin "}, {" name ":" username "," id ":" txt-username "," caption ":" Username "," type ":" text "," placeholder ":" Например, user@example.com"}, {" name ":" password "," caption ":" Password "," type ":" password "}, {" type ":" submit "," value ":" Login "}

Пожалуйста, помогите

1 Ответ

3 голосов
/ 11 мая 2011

Создайте метод renderJSON и присоедините его к BaseForm. Метод будет перебирать sfFormFields и создавать массив, который затем можно будет передать json_encode.

Идеальным решением было бы внедрение вашего собственного класса в цепочку наследования sfWidgetForm с помощью метода renderJSON, чтобы отдельные виджеты могли контролировать свой формат JSON. К сожалению, Symfony делает это очень трудно.

...