1

我实现了 Doctrine 的 Loggable 扩展。但现在我有以下情况。我想跟踪对象的“状态”。但是这些对象已经存在于我的数据库中,并且每个对象都有相应的状态。当我更新一个时,在 log_entry 中插入了一个对象的第一个日志,其状态具有新值。(假设我将状态从活动更改为挂起,并在日志条目中插入挂起)

从这一刻起,我无法恢复“活动”状态,因为它没有记录在任何地方。我可以用几种方法来处理这个问题,但是该可记录扩展是否有一些选项,而不是插入新版本,作为日志中对象的记录以存储当前版本,在更改发生之前?

4

1 回答 1

1

您可以从 LoggableListener 覆盖 getObjectChangeSetData。

旧值存储在 $changes 数组中。

于 2017-01-20T17:14:48.977 回答