使用RevisionableTrait时,如何触发它以保存特定模型的修订版本,所有这些都是从Controller完成的。
用户发送电子邮件(此操作不会CRUD任何模型),但我想跟踪此操作。所以我做了类似的事情:
Action::make('send email', $user, $email, $time, $from, $to, $subject, ....)
原因:我想在做一些与Revisionable支持的CRUD方法有关的事情时保存修订版。所以,我需要手动触发它。
实施例: This package正是我所描述的。我可以在需要时创建一个Activity。另外还附上一些额外的信息。
示例:我想创建一个修订版,即使模型没有改变!可能触发此操作的一些操作可能是:用户发送电子邮件,用户查看电子邮件草稿。所以,从Controller我需要记录/注册该动作并保存它。这可能吗?
Revisionable看起来没有收听自定义触发器的事件。我错了吗?,有解决方法吗?
备注:
答案 0 :(得分:0)
The revisionable documentation告诉您确切需要做什么,将特征添加到您的模型中:
class YourModelHere extends Eloquent {
use \Venturecraft\Revisionable\RevisionableTrait;
public static function boot()
{
parent::boot();
}
// other model code goes here
}
通过致电boot methods when saving, saved, creating, and updating.
来讨论还提供了可以与之相关的事件:
活动
每次创建模型修订时,都会触发事件。您可以 听取
revisionable.created
,revisionable.saved
或revisionable.deleted
。