- Вам необходимо добавить свой текстовый ввод в форму:
$form = $this->createForm(FormType::class)
->add('content', TextareaType::class, [
'label' => false,
'attr' => [
'rows' => 5,
'class' => 'form-control'
]
])
->add('save', SubmitType::class, [
'label'=> 'Save changes form',
'attr' => ['class' => 'btn btn-primary']
]);
{{ form(form) }}
используется для полной визуализации формы, вам не нужно использовать ее вместе с
form_start
/
form_end
.
Просто выполните полную визуализацию формы:
{{ form(form) }}
или визуализируйте каждую часть формы по отдельности:
{{ form_start(form) }}
{{ form_row(form.content) }}
{{ form_row(form.submit) }}
{{ form_end(form) }}
Вам не нужно проверять кнопку на «клик», просто проверьте, была ли отправлена ваша форма:
...
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
// You can get your data directly from the form:
$content = $form->get('content')->getData();
$announcementToCreate = new Announcement($content, $currentUser);
$currentUser->getAnnouncements()->add($announcementToCreate);
$this->getDoctrine()->getManager()->persist($announcementToCreate);
$this->getDoctrine()->getManager()->flush();
}