symfony 3 вывод в форму ChoiceType (select) из базы данных

170
23 февраля 2019, 15:50

Помогите, пожалуйста. Делаю скрипт, в котором можно добавлять пользователя, каждый пользователь имеет свою должность (таблица в базе positions). Сделал форму добавления должностей, теперь делаю форму для добавления самих пользователей. Начал с формы и застрял на моменте, где необходимо в форму вывести select со всеми должностями. В документации нашел, как сделать select, но как вывести туда данные из базы - нет.

public function userAdd(Request $request)
    {
        $userAdd = new UserAdd();
        $form = $this->createFormBuilder($userAdd)
            ->add('name', TextType::class)
            ->add('photo', FileType::class)
            ->add('rate', NumberType::class)
            ->add('firstDay', DateTime::class)
            ->add('save', SubmitType::class, array('label' => 'Добавить пользователя'))
            ->add('position', ChoiceType::class, array(
                'choices'  => array(
                    'Maybe' => null,
                    'Yes' => true,
                    'No' => false,
                ),
            ))
            ->getForm();
    }
}
Answer 1

Необходимо было юзать EntityType Вот корректный вариант:

public function userAdd(Request $request)
{
    $userAdd = new UserAdd();
    /*->add('photo', FileType::class)*/
    $form = $this->createFormBuilder($userAdd)
        ->add('name', TextType::class)
        ->add('rate', NumberType::class)
        ->add('firstDay', DateType::class)
        ->add('position', EntityType::class, array(
            'class' => Positions::class,
            'choice_label' => 'name',
            )
        )
        ->add('save', SubmitType::class, array('label' => 'Добавить пользователя'))
        ->getForm();
        return $this->render('admin/userAdd.html.twig', array(
            'form' => $form->createView(),
        ));
}

В результате появляется select, такого вида: name.positions

READ ALSO
Вывод вложенных списков из БД с помощью PHP

Вывод вложенных списков из БД с помощью PHP

Подскажите, пожалуйста, как можно решить следующую задачуЕсть таблица Категории товаров

174
Opencart, ocmod, как заменить несколько строк?

Opencart, ocmod, как заменить несколько строк?

Допустим есть такой код в файле theme/default/common/headerphp:

198
Ошибка при развертывании проекта на Symfony 2.8

Ошибка при развертывании проекта на Symfony 2.8

у меня linux mint, при попытке запустить проект выдает ошибку: This page isn’t working

175
Запись в txt цикла массива php

Запись в txt цикла массива php

Подскажите пожалуйста, есть массив

192