symfony - Form default values is not shown -


the problem is. i'm trying set defalut form values, , there's no way can achieve this.

page layout

{% extends bundle ~ "bundle::reg.html.twig" %} {% form_theme regform   'acmebundle:form:order_type_fields.html.twig' %} {% block content %} <form action="{{ path('reg') }}" {{ form_enctype(regform) }} method="post">     <div>      {{ form_widget( regform.firstname )}}     </div>     {{ form_rest( regform )}}     <input type="submit> </form> {% endblock %} 

fields layout

{% block text_widget %} {% spaceless %}     <label>{{label}}</label>     <input type="text" {{ block('widget_attributes') }} value="{{ value }}"> {% endspaceless %} {% endblock text_widget %} 

controller

$user      = new user(); $regform   = $this->get('form.factory')->create(new regform(), $user);  return $this->render("frontendbundle:order:type.html.twig", array(        'regform'   => $regform->createview(), ); 

form

class regform extends abstracttype {     public function buildform( formbuilder $builder, array $options ){       $builder->add( 'firstname',     'text',  array( 'label' => ' ', 'data' => 'enter name here' ) );     }             public function getname()     {         return 'reg';     } } 

i've tried set default field data in many ways:

in controller defining firstname field (

$user->setfirstname('enter name here'); 

).

in form builder using setdata method (

$builder->add( 'firstname',     'text',  array( 'label' => ' ' ) )->setdata(array('firstname' => 'enter name here')); 

or

$builder->setdata(array('firstname' => 'enter name here')); 

all other form stuff work's fine. example, can set label 'firstname' without problems. so, missing?

upd: after first answer decided ask direct question: why doesn't work default value this, while label works fine:

$builder->add('firstname', 'text', array('label' => 'name', 'data' => 'andrew')); 

?

maybe mistakes in twig templates?

have tried in form type:

$builder     ->add('firstname','hidden', array(         'attr' => array(             'value' => 'enter name here',         ),     )) 

it seems me, though, want use placeholder (html5) instead:

$builder     ->add('firstname','hidden', array(         'attr' => array(             'placeholder' => 'enter name here',         ),     )) 

Comments

Popular posts from this blog

java - Play! framework 2.0: How to display multiple image? -

gmail - Is there any documentation for read-only access to the Google Contacts API? -

php - Controller/JToolBar not working in Joomla 2.5 -