Я пытаюсь отправить форму, которая появляется в модальном окне. Я знаю, что форма работает, если я запускаю ее как отдельное окно, однако в модальном режиме она, похоже, ничего не передает и не возвращает ошибок или чего-либо еще в Symfony.
Вот как я называю это в ветке:
<button data-toggle="modal" href="{{ path('new_ingredient') }}" data-target="#ingredient_new">Add a new ingredient</button>
<div class="modal fade" id="ingredient_new">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-body">
{{ render(controller('App\\Controller\\DishController:newIngredient')) }}
</div>
</div>
</div>
</div>
А вот мой контроллер:
/**
* @Route("/ingredient/new", name="new_ingredient")
*/
public function newIngredient(Request $request)
{
$ingredient = new Ingredient();
$form = $this->createForm(NewIngredientType::class, $ingredient);
$form->handleRequest($request);
if($form->isSubmitted() && $form->isValid()) {
$ingredient = $form->getData();
$em = $this->getDoctrine()->getManager();
$em->persist($ingredient);
$em->flush();
return $this->redirectToRoute('dashboard');
}
return $this->render('ingredients/new.html.twig', array(
'form' => $form->createView())
);
}
Я чувствую, что в ветке чего-то не хватает , Есть ли что-то очевидное, что мне не хватает? Как я уже говорил, сама форма работает, если я вызываю ее отдельно, но после отправки она ничего не делает в модальном режиме.
Редактировать Вот сама форма; это довольно просто, только одно поле и отправка
class NewIngredientType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
parent::buildForm($builder, $options); // TODO: Change the autogenerated stub
$ingredient = new Ingredient();
$builder
->add('name', TextType::class, array(
'attr' => array('class' => 'form-control'),
))
->add('save', SubmitType::class, array(
'label' => 'Save',
'attr' => array('class' => 'btn btn-primary mt-3')
))
->getForm();
}
}
Веточка, которая используется для создания модального окна, выглядит так:
{{ form_start(form) }}
{{ form_widget(form) }}
{{ form_end(form) }}