user3009816
user3009816

Reputation: 797

Symfony choice field type reports "This value is not valid" when submitting an invalid option. How do I change this?

I've noticed that when using the Symfony 2.3 choice field type, if I try to submit an invalid option (by manually changing the value of an option), symfony reports a form error on that field that says "This value is not valid".

However, I see no option to change this message in the choice field type class. I have not validation constraints set up for this field either.

Where is this error message coming from, and how do I change it?

Upvotes: 12

Views: 22604

Answers (3)

Văn Tuấn Phạm
Văn Tuấn Phạm

Reputation: 659

You can get value of parameter to check is valid after set value valid or null for it.

Get value of field after submit form

   $name = $request->request->get('name');

Check it is not valid after set value valid for it

if (empty($name)) {
  $request->request->set('name', 'your name');
}


            

Upvotes: -1

egeloen
egeloen

Reputation: 5864

The sentence "The value is not valid" is the default error message which results of a form field transformation failure. This error message is related to each field in case of a data transformer failed (in your case it seems you try to send an invalid choice value). If you want to override it, you can use the invalid_message & invalid_message_parameters form type options.

I can't find the official documentation of this property right now but you can take a look to this for more details: link

Upvotes: 18

Peter Bailey
Peter Bailey

Reputation: 105878

The message is coming from the choice constraint, not the choice field type class.

http://symfony.com/doc/current/reference/constraints/Choice.html

The message option can be overridden with your own message.

Upvotes: 2

Related Questions