@symnoob

Symfony 4 использование Form Type и Bootstrap 4, как использовать GRID?

Добрый день, у меня есть вопрос по поводу Форм в Симфони.
Создал Форму:

File: register_content.html.twig
{% trans_default_domain 'FOSUserBundle' %}

{{ form_start(form, {'method': 'post', 'action': path('fos_user_registration_register'), 'attr': {'class': 'fos_user_registration_register'}}) }}
    {{ form_widget(form, {'attr': {'class': 'form-row'}}) }}
    <div>
        <input type="submit" value="{{ 'registration.submit'|trans }}" class="btn btn-primary btn-block" />
    </div>
{{ form_end(form) }}


File: twig.yaml:
form_themes: ['bootstrap_4_layout.html.twig']

File: RegistrationFormType.php
public function buildForm(FormBuilderInterface $builder, array $options)
    {

        $builder
            ->add('sex', ChoiceType::class, array(
                'label_attr' => array(
                    'class' => 'radio-inline'
                ),
                'choices' => array(
                    'form.Mrs' => 'Mrs',
                    'form.Mr' => 'Mr',
                ),
                'multiple' => false, 'expanded' => true,
                'translation_domain' => 'FOSUserBundle',
                'label' => 'form.sex'
            ))
            ->add('firstName', TextType::class, array(
                'label' => 'form.firstName',
                'translation_domain' => 'FOSUserBundle'))
            ->add('lastName', TextType::class, array(
                'label' => 'form.lastName',
                'translation_domain' => 'FOSUserBundle'));
    }


<form name="fos_user_registration_form" method="post" action="/register/" class="fos_user_registration_register">
    <div id="fos_user_registration_form" class="row">
<div class="form-group"><label for="fos_user_registration_form_email" class="form-control-label required">E-Mail-Adresse</label><input type="email" id="fos_user_registration_form_email" name="fos_user_registration_form[email]" required="required" class="form-control" /></div>
итд.......


как нибудь можно дабавить сетку? чтобы получилось чтото вроде этого: <div class="form-group col-sm-6">?
Заранее благодарен
  • Вопрос задан
  • 1080 просмотров
Решения вопроса 1
voronkovich
@voronkovich
Да, вам нужно будет создать свою тему, в которой переопределить виджет form_row. Подробнее см. здесь: symfony.com/doc/current/form/form_customization.html

symnoob, Там есть в точности ваш случай, когда надо добавить css-клаcc: symfony.com/doc/current/form/form_customization.ht...

Дальше у вас есть два варианта: symfony.com/doc/current/form/form_customization.ht...

Если у вас в разных местах нужны разные классы, то лучше просто делать все вручную: https://symfony.com/doc/current/form/rendering.htm...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы