2015-02-09 41 views
3

我正在創建一個todo應用程序,用戶可以在其中創建任務。用戶可以選擇插入標題,截止日期,完成。我希望能夠在用戶創建任務時自動插入創建和更新的日期。如何在symfony2中設置創建和更新的日期?

+1

使用教義的prePersist和preUpdate事件 – 2015-02-09 05:54:52

回答

9

您可以在一個對象的初始化設置創建日期(__construct() method)及更新日期由生命週期回調管理Doctrine2事件,這裏有一個例子:

<?php 
namespace Acme\DemoBundle\Entity; 

use Doctrine\ORM\Mapping as ORM; 


/** 
* @ORM\Entity() 
* @ORM\Table(name="task") 
* @ORM\HasLifecycleCallbacks 
*/ 
class Task { 

.... 

/** 
    * @ORM\Column(type="datetime") 
    */ 
    protected $createdAt; 

    /** 
    * @ORM\Column(type="datetime") 
    */ 
    protected $updatedAt; 

... 

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

    /** 
    * @ORM\PreUpdate() 
    */ 
    public function preUpdate() 
    { 
     $this->updatedAt= new \DateTime(); 
    } 

.... 

} 

希望這有助於

相關問題