I have a form declared in nameType.php
and the view render all field but I want add another field manually.
Form:
<form action="{{ path('create') }}" method="post" {{ form_enctype(form) }}>
{{ form_widget(form) }}
<input type="text" value="2">
</form>
And get the values in the controller:
$form->bindRequest($request);
How can I collect the value of the input in the controller?
If you are trying this because the form is linked to your entity field you can add a field to FormType as not mapped. Then you do not need getters and setters on your entity.
->add("inputName", "text", array("mapped"=>false, "data"=>2, "label"=>false))
To get the data in the controller:
$form->get("inputName")->getData();
You can not retrieve the input
value from the $form
, because it's not part of it.
You have to retrieve it from the request
in the Controller
by using the name
attribute :
HTML : <input type="text" value="2" name"var_name">
Controller: $request->request->get('var_name')
how could collect the value of the input to the controller?
The instant-gratification way would be to use
$form->get('inputName')->getViewData()
for an unmapped field. But I'm sure there are better ways which are Symfony validation-compliant.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With