doctrine-orm - 在 symfony 3 中自动更新createdAt和updatedAt字段(原则)

标签 doctrine-orm entity symfony

我有一个实体(服务器),它应该有两个额外的字段:createdAtupdatedAt(像cakephp>)。我在 Server 实体上尝试过:

/**
 * @ORM\PrePersist
 * @ORM\PreUpdate
 */
public function updateTimestamp()
    {
        $this->setModifiedAt(new \DateTime());
        if($this->getCreatedAt() == null){
            $this->setCreatedAt(new \DateTime());
        }
    }

但更新过程中没有任何反应。然后我搜索了一下,发现有这个 EventListener 解决方案。

我也无法解决这个问题。

这个问题有解决办法吗,请提供一步一步的解决方案。

非常感谢你,抱歉英语不好! ;)

最佳答案

检查您的实体上是否有 HasLifecycleCallbacks 注释,例如:

/**
 * @ORM\Entity
 * @ORM\HasLifecycleCallbacks
 */
class Server

希望这有帮助

关于doctrine-orm - 在 symfony 3 中自动更新createdAt和updatedAt字段(原则),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36028891/

相关文章:

doctrine - 什么时候在 Doctrine2 中保持反向关系是值得的?

symfony - 如何在 Symfony2 中设置多对多表单

domain-driven-design - 在下面的模型中,地址不应该是一个值对象吗?

symfony - OVH服务器上的symfony 4.3,缓存清除返回错误255(而composer更新/heroku从github部署时)

symfony - 如何在 Assetics 'javascript' 标签中使用 Twig 变量?

symfony - 使用与多个实体管理器的关系

mysql - 在 Symfony2 中使用 Doctrine2 和外键

Java httpPost 未正确发布数据(Apache 库)?

components - 使用实体组件系统构建业务应用程序有什么优势?

php - 向现有实体添加额外的 SELECT 表达式结果