Функция контроллера:
public function new(Request $request)
{
$post = new Post();
$form = $this->createForm(PostType::class, $post);
$form->handleRequest($request);
if ($form->isSubmitted()){
if($form->isValid()) {
die('working');
}
else
{
die("error");
}
}
return $this->render('post/index.html.twig',[
'form' => $form->createView(),
]);
}
В config / validator / validation.yaml
App\Entity\post:
properties:
title:
- Length:
min: 2
max: 50
minMessage: 'Your first name must be at least {{ limit }} characters long'
maxMessage: 'Your first name cannot be longer than {{ limit }} characters'
Форма Класса:
class PostType extends AbstractType {
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('title',TextType::class,[
'attr' => [
'placeholder' => 'Enter Title',
'class' => 'Some Class',
]
])
->add('description',TextareaType::class,[
'attr' => [
'placeholder' => 'Enter Description',
'class' => 'Some Class'
]
])
->add('Save',SubmitType::class,[
'attr' => [
'class' => 'btn btn-success'
]
])
;
}
Я также добавил
validation: { enable_annotations: true }
в config / packages / framework.yaml
Вопрос:
Я вставляю один алфавит, скажем «z» в заголовке. Он должен вернуть ошибку проверки. isValid () должен давать false, но он дает true. Может кто-нибудь сказать мне, как использовать проверку здесь?