我想我发现了一个我找不到解决方案的错误..
我尝试更新 datetime 字段,但不要更新它,不要给我一个错误。
移动所有其他字段正确修改它们,但日期时间字段没有。
$em = $this->getDoctrine()->getManager();
$entity = $em->getRepository('MyOwnBundle:Events')->find($id);
$In = $entity->getDateIn();
$In->modify('+1 day');
$entity->setDateIn($In);
$em->flush();
我还尝试直接插入一个 DateTime() 对象,但根本不更新!
$entity->setDateIn(new \DateTime());
这个问题有解决方案吗?
我安装了 symfony 2.1 和教义 2.3.3
编辑 事件实体:
/**
* Events
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="My\OwnBundle\Entity\EventsRepository")
*/
class Events
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="name", type="string", length=100)
*/
private $name;
/**
* @var string
*
* @ORM\Column(name="description", type="text")
*/
private $description;
/**
* @var \DateTime
*
* @ORM\Column(name="dateIn", type="datetime")
*/
private $dateIn;
/**
* @var \DateTime
*
* @ORM\Column(name="dateOut", type="datetime")
*/
private $dateOut;
....
/**
* Set dateIn
*
* @param \DateTime $dateIn
* @return Events
*/
public function setDateIn($dateIn)
{
$this->dateIn = $dateIn;
return $this;
}
/**
* Get dateIn
*
* @return \DateTime
*/
public function getDateIn()
{
return $this->dateIn;
}
/**
* Set dateOut
*
* @param \DateTime $dateOut
* @return Events
*/
public function setDateOut($dateOut)
{
$this->dateOut = $dateOut;
return $this;
}
/**
* Get dateOut
*
* @return \DateTime
*/
public function getDateOut()
{
return $this->dateOut;
}
....