Изменить имя формы с помощью FormBuilder symfony

У меня вопрос, я знаю, что могу использовать FromFactoryInterface для установки имени формы, но как я могу это сделать с помощью FormBuilder? Это получить имя класса и сгенерировать из них автоматическое имя, как я могу изменить его на свое указанное имя?

Тип формы:

    <?php

class ProfileAddPracownikType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder

            ->add('username', null, [
            'label_attr' => array('class' => 'bmd-label-floating'),
            'label' => 'Nazwa użytkownika',
            'mapped' => false,
            'attr' => ['class' => 'form-control']])     
            ->add('imie', null, [
            'label_attr' => array('class' => 'bmd-label-floating'),
            'label' => 'Imię',
            'mapped' => false,
            'data' => $options['imie'],
            'attr' => ['class' => 'form-control']])
            ->add('nazwisko', null, [
            'label_attr' => array('class' => 'bmd-label-floating'),
            'label' => 'Nazwisko',
            'mapped' => false,
            'data' => $options['nazwisko'],
            'attr' => ['class' => 'form-control']])
            ->add('telefon', null, [
            'label_attr' => array('class' => 'bmd-label-floating'),
            'label' => 'Numer telefonu',
            'mapped' => false,
            'data' => $options['telefon'],
            'attr' => ['class' => 'form-control']])
            ->add('email', null, [
            'label_attr' => array('class' => 'bmd-label-floating'),
            'label' => 'Adres e-mail',
            'mapped' => false,
            'data' => $options['email'],
            'attr' => ['class' => 'form-control']]) 
            ->add('password', RepeatedType::class, array(
                    'type' => PasswordType::class,
                    'invalid_message' => 'Hasła muszą być takie same.',
                    'options' => array('attr' => array('class' => 'password-field')),
                    'required' => false,
                    'first_options'  => array('label' => 'Hasło (jeżeli pozostawisz to pola puste hasło nie zmieni się)','attr' => ['class' => 'form-control'],'label_attr' => ['class' => 'bmd-label-floating']),
                    'second_options' => array('label' => 'Powtórz hasło','attr' => ['class' => 'form-control'],'label_attr' => ['class' => 'bmd-label-floating']),
                    'mapped' => false,


                ))          
            ->add('avatar', FileType::class, [
            'label_attr' => array('class' => 'bmd-label-floating'),
            'label' => 'Wgraj lub aktualizuj avatar (jeżeli nie wgrasz pliku pozostanie standardowy obrazek)',
            'mapped' => false,
            'required' => false,
            'data' => $options['avatar'],
            'attr' => ['class' => 'form-control']])         
            ->add('save', SubmitType::class, [
            'label' => 'Zapisz profil',
            'attr' => ['class' => 'btn btn-primary pull-right']])   

        ;
    }

}

Построение формы внутри контроллера:

$form_profile = $this->createForm(ProfileAddPracownikType::class, $request, array());

Проблема в том, что я сохраняю все данные в один json_array, и мне нужно использовать его несколько раз, но с другим именем класса иногда используется поле +1 или -1, и POST эта форма дает мне json, первый объект которого является именем класса, Мне нужно получить то же имя первого объекта, как «профиль», а не пример формы в одной форме «профиль», а в следующем примере - «profile_add_pracownik», как я могу заставить изменить имя 3 типов форм на одно имя (srry english)

flow 09.09.2018 18:27

Хорошо, этот трюк, маг все $ form-> remove ('fieldname');

flow 09.09.2018 19:29
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Symfony Station Communiqué - 17 февраля 2023 г
Symfony Station Communiqué - 17 февраля 2023 г
Это коммюнике первоначально появилось на Symfony Station , вашем источнике передовых новостей Symfony, PHP и кибербезопасности.
Управление ответами api для исключений на Symfony с помощью KernelEvents
Управление ответами api для исключений на Symfony с помощью KernelEvents
Много раз при создании api нам нужно возвращать клиентам разные ответы в зависимости от возникшего исключения.
0
2
315
0

Другие вопросы по теме