Регистрируйте активность пользователя и откатывайтесь в Yii Framework

Я использую структуру Yii для одного из внутренних приложений. У меня есть разные уровни пользователей, такие как admin, super admin.

В моем приложении суперадминистратор должен отслеживать все действия администратора в БД (вставка, обновление и удаление), а также он может откатывать определенное действие (например, обновление имени клиента. При откате старое имя должно быть сохранено) ).

Я провел некоторое исследование, но не нашел решения.

Заранее спасибо.


person Shankar    schedule 23.04.2013    source источник


Ответы (1)


Я создал расширение, позволяющее отслеживать все версии, созданные для модели активной записи. Вот небольшой пример:

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
person darkheir    schedule 23.04.2013