Выровнять входные данные формы в одной строке

#css #symfony #doctrine-orm #symfony4

#css #симфония #доктрина-orm #symfony4 #symfony #doctrine-orm

Вопрос:

итак, у меня есть этот Symfony Form , который я создал, и есть эти 3 входных сигнала, которые связаны друг с другом. Я пытаюсь выровнять все три из них в одной строке, чтобы это выглядело лучше. Вот мой код: FormType

 <?php

namespace AppForm;
use SymfonyComponentFormExtensionCoreTypeTextType;
use SymfonyComponentFormExtensionCoreTypeDateType;
use SymfonyComponentFormExtensionCoreTypeTimeType;

use AppEntityTypeParking;
use SymfonyComponentFormAbstractType;
use SymfonyComponentFormFormBuilderInterface;
use SymfonyComponentOptionsResolverOptionsResolver;

class TypeParkingType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('libelle')
            ->add('tempsmax')
            ->add('jourdebut')
            ->add('jourfin')



//these three are the fields that I'm trying to put into a single line
            ->add('jourstravail_jour', TextType::class, ['property_path' => 'jourstravail[jour]'])
            ->add('jourstravail_debut', TextType::class, ['property_path' => 'jourstravail[debut]'])
            ->add('jourstravail_fin', TextType::class, ['property_path' => 'jourstravail[fin]'])


            ->add('Exception_Name', TextType::class, ['property_path' => 'exception[name]'])
            ->add('Starting_date', TextType::class, ['property_path' => 'exception[datedebut]'])
            ->add('Ending_date', TextType::class, ['property_path' => 'exception[datefin]'])
            ->add('Starting_time', TextType::class, ['property_path' => 'exception[heuredebut]'])
            ->add('Ending_time', TextType::class, ['property_path' => 'exception[heurefin]'])
        ;
    }

    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults([
            'data_class' => TypeParking::class,
        ]);
    }
}
  

и вот мой файл _form.html.twig

 {{ form_start(form) }}

    {{ form_row(form.libelle, { 'label': 'Label' }) }}
    {{ form_row(form.tempsmax, { 'label': 'Max Time' }) }}
    {{ form_row(form.jourdebut, { 'label': 'Start Date' }) }}
    {{ form_row(form.jourfin, { 'label': 'Ending Date' }) }}

    <h3>these are the fields</h3>
    {{ form_row(form.jourstravail_jour, { 'label': 'Day' }) }}
    {{ form_row(form.jourstravail_debut, { 'label': 'start' }) }}
    {{ form_row(form.jourstravail_fin, { 'label': 'end' }) }}

    <h3>Exception</h3>
    {{ form_row(form.Exception_Name, { 'label': 'Exception Name' }) }}
    {{ form_row(form.Starting_date, { 'label': 'Starting Date' }) }}
    {{ form_row(form.Ending_date, { 'label': 'Ending Date' }) }}
    {{ form_row(form.Starting_time, { 'label': 'Starting Time' }) }}
    {{ form_row(form.Ending_time, { 'label': 'Ending Time' }) }}




    <button class="btn">{{ button_label|default('Save') }}</button>
{{ form_end(form) }}


  

Поля, которые я пытаюсь отформатировать, являются jourstravail_jour , jourstravail_debut и jourstravail_fin

Комментарии:

1. Почему бы не использовать какой-нибудь CSS «фреймворк», такой как Bootstrap, Fomantic-ui, Foundation (или другие, их множество)? Почти у всех из них есть классы CSS, чтобы делать то, что вы хотите, и даже больше.

2. На самом деле я использую bootstrap, просто я не знал, как его использовать, когда дело доходит до работы с формами Symfony.

3. Вы можете использовать его «нормально», используя form_label() и form_widget (не уверен насчет этого) и обернуть их классами начальной загрузки. или вы можете настроить form_row поведение : symfony.com/doc/current/form/form_customization.html и включите свои классы в свой собственный шаблон формы.

4. Ах, это сработало, большое спасибо, это было намного проще, чем я думал.

Ответ №1:

Вот ответ, основанный на моих комментариях, который, казалось, помог вам, поэтому вы можете пометить свои вопросы как ответы.

Вы можете использовать это «нормально», используя form_label() и form_widget() (не уверен насчет этого) и обернуть их классами начальной загрузки.

Или вы можете настроить form_row() поведение и включить свои классы в свои собственные шаблоны форм.