【发布时间】:2013-04-23 20:33:07
【问题描述】:
我正在将 Yii 框架用于其中一个内部应用程序。我有不同级别的用户,例如管理员、超级管理员。
在我的应用程序中,超级管理员需要跟踪所有管理员用户数据库活动(插入、更新和删除),并且他们还可以回滚特定活动(例如:更新客户的名字。回滚时,旧名字应该保留)。
我做了一些研究,但找不到解决方案。
提前致谢。
【问题讨论】:
标签: yii yii-extensions yii-components
我正在将 Yii 框架用于其中一个内部应用程序。我有不同级别的用户,例如管理员、超级管理员。
在我的应用程序中,超级管理员需要跟踪所有管理员用户数据库活动(插入、更新和删除),并且他们还可以回滚特定活动(例如:更新客户的名字。回滚时,旧名字应该保留)。
我做了一些研究,但找不到解决方案。
提前致谢。
【问题讨论】:
标签: yii yii-extensions yii-components
我创建了一个扩展程序,让您可以跟踪为活动记录模型创建的所有版本。这是一个小例子:
book = new Book;
$book->title = 'The correctio';
$book->author = 'Jonathan Franzen';
$book->save();
echo $book->version; //1
$book->title = 'The corrections';
$book->save();
echo $book->version; //2
$book->toVersion(1);
echo $book->title; //'The correctio'
// saving a previous version creates a new one
$book->save();
echo $book->version; // 3
并且要知道谁保存了模型:
echo $book->versionCreatedBy; //"John Doe";
echo $book->versionComment; //"Creation of the book in the db";
echo $book->createdTime; // 11/10/2009
【讨论】: