2016-01-30 63 views
0

如何从控制器设置symfony html5窗体的默认日期宽度?如何在Symfony html5 datepicker中设置默认日期?

$date = date(d-m-Y); //todays date 

... 
    ->add('starts', 'date', [ 
     'widget' => 'single_text', 
     'format' => 'dd-MM-yyyy', 
     'placeholder'=>$data, 
    ]) 
... 

'占位'=> $数据什么都不做。页面加载后,我的表单输入包含DD.MM.YYYY

回答

1

试试这个

 ->add('starts', 'date', [ 
      'widget' => 'single_text', 
      'format' => 'dd-MM-yyyy', 
      'data' => new \DateTime() 
     ]) 
+0

thx但nope-也没有。输入是空的 – DevWL

+0

@GlupiJas 我测试Symfony的3 - 铬exacly像下面和它的工作 ' - >加( '开始',DateType ::类,[ '插件'=> 'single_text', '格式'=>'dd-MM-yyyy', 'data'=> new \ DateTime(), 'mapped'=> false ]' –

+0

也许你是对的,但有些东西阻止它在我的项目中工作。它在Syfony 2.7中工作吗? – DevWL

0

如果您的形式被连接到一个模型对象,该对象上设置你的约会。

0

好的,我必须创建一个关联数组,其中包含该字段的名称及其默认值。我必须将该数组作为第一个参数传递给createFormBuilder()方法。

$defaultData = [ 
    'starts' = new \DateTime() 
]; 

$form = $this->createFormBuilder($defaultData, ['attr'=>['novalidate'=>'novalidate']) 
->add(...) 
... 

我也可以设置第一个参数null进行并添加默认数据:

$form = $this->createFormBuilder(null, ['attr'=>['novalidate'=>'novalidate']) 
->add(...) 
->getForm(); 
$form->setData($defaultData); 

这也为我工作。

相关问题