以symfony2格式在Datetime字段上设置默认值 [英] Set default value on Datetime field in symfony2 form

查看:83
本文介绍了以symfony2格式在Datetime字段上设置默认值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含几个字段的表格.其中之一是Datetime字段.如何为该字段定义默认值?

I have a form containing several fields. One of them is a Datetime field. How to define a default value for that field?

我尝试在控制器,构造函数和__construct的相关实体上设置值:

I've tried setting a value on the related entity, in controller, in constructor and __construct :

$myEntity = new MyEntity();
$myEntity->setMyDate(new \DateTime());
$form = $this->createForm(new AddMyEntity(), $myEntity);

不起作用.

试图在buildForm中定义$data变量:

Tried to define the $data variable in the buildForm :

$builder->add('myDate', 'date', array(
    'format' => \IntlDateFormatter::SHORT,
    'input' => 'datetime',
    'widget' => 'single_text',
    'data' => new \DateTime("now"));

也不起作用. 有什么想法吗,Symfony2社区?

Not working either. Any ideas, Symfony2 community?

根据需求增加实体.

EDIT : Adding entity on demand of faost.

/**
 * @ORM\Column(name="myDate", type="datetime")
 * @Assert\NotBlank()
 */
private $myDate;

推荐答案

在实体构造函数中进行设置:

Set it in the entity constructor:

class Entity
{
    /**
     * @var \DateTime
     */
    private $date;

    public function __construct()
    {
        $this->date = new \DateTime();
    }
}

这篇关于以symfony2格式在Datetime字段上设置默认值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆