Symfony версия 3.1.3Symfony 3: Как использовать два варианта/выпадающие из двух таблиц в одной форме
Я создал выпадающее меню, используя объект, называемый Классы и вы можете увидеть ниже контроллера,
public function studentAddClassAction($id, Request $request)
{
// get the student from the student table
$em = $this->getDoctrine()->getManager();
$user = $em->getRepository('PIE10Bundle:Users')->find($id);
// new class object and create the form
$classes= $em->getRepository('PIE10Bundle:Classes')->findAll();
$form = $this->createForm(ClassType::class, $classes);
$form->handleRequest($request);
if($form->isSubmitted() && $form->isValid())
{
// form submit operations
}
return $this->render(
'PIE10Bundle:student:layout_student_addclass.html.twig',
array(
'user' => $user,
'title' => 'Add Class',
'tables'=> 1,
'form' => $form->createView()
)
);
}
и ClassType ниже
class ClassType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('classes',
EntityType::class,
array('class' => 'PIE10Bundle:Classes',
'expanded' => false,
'multiple' => false,));
$builder->add('Add Class',
SubmitType::class,
array('attr' => array('class' => 'btn btn-primary',
'style' => 'margin:15px 0;')));
}
}
и это прекрасно работает и он дает все классы из базы данных. Кроме того, я другой объект, называемый Пользователи и имеет столбец роли (DC2Type: массив), и это роль называется ROLE_PARENT
и я могу получить все родители с помощью следующего запроса
$query = $this->getDoctrine()->getEntityManager()
->createQuery('SELECT u FROM PIE10Bundle:Users u WHERE u.roles LIKE :role')
->setParameter('role', '%"ROLE_PARENT"%');
$users = $query->getResult();
Мой вопрос заключается в том, как добавить список этих родителей в список выбора в ту же самую форму в редакторе studentAddClassAction.
Пожалуйста, дайте мне знать в любой другой информации, необходимой для этого.
ли '' User' и Classes' отображается на ManyToMany и вы хотите в эта форма только для того, чтобы создать связь между ними? Другими словами, назначьте пользователя классу? –
Да Я хочу назначить Класса и Родителей пользователю, и они будут сохранены в отдельной таблице, называемой ** students **, она имеет три столбца ClassID, ParentID и UserID. Поэтому я хочу добавить еще один список вариантов для родителей. – mapmalith