Я новичок в шаблонах Symfony и twig. Проблема в том, что я не могу понять, как визуализировать поля встроенной формы отдельно в шаблоне ветви. Я попытался найти его, но, возможно, другие использовали немного разные формы, и эти примеры не сработали для меня.
Мои формы:
class RegistrationType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder->add('user', new UserType()); $builder->add( 'terms', 'checkbox', array('property_path' => 'termsAccepted') ); $builder->add('Register', 'submit'); } public function getName() { return 'registration'; } }
а также
class UserType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder->add('username', 'text'); $builder->add('name', 'text'); $builder->add('email', 'email'); $builder->add('password', 'repeated', array( 'first_name' => 'password', 'second_name' => 'confirm', 'type' => 'password', 'invalid_message' => 'Neteisingai pakartotas slaptažodis.', )); } public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setDefaults(array( 'data_class' => 'Keliones\MainBundle\Entity\User' )); } public function getName() { return 'user'; } }
Как поле поиска по полю должно искать это?
В основном Symfony и Form Framework создают базу объектов Form в классах конфигурации Type. Объект формы имеет метод createView (), который передается для просмотра http://api.symfony.com/2.4/Symfony/Component/Form/FormView.html
В ветке вы можете получить доступ к встроенному объекту FormView:
{# access embeded form #} {{ form_row(form.user.username) }} {{ form_row(form.user.email) }} {{ form_row(form.user.password) }} {# access main form field #} {{ form_row(form.terms) }}