2016-09-06 111 views
1

我需要YII2 web-app的高级日志系统。Yii2高级日志记录

在我的应用程序模型(从基本活动记录模型扩展)中,我需要特定的模型方法在DB中记录此操作。

例如,我需要登录关于创建/更新/删除模型的数据库信息。但是模型属性之一 - 视图的数量。所以当我只更新这个属性时。 - 我们不需要记录此操作。

在我的日志表中,我需要插入下一个字段:model name,modelId,time,userId。另外,将来我希望设置在已记录方法的数组列表中,以及基本模型检查列表中,并且如果此数组中存在方法 - 将日志操作写入数据库。

我该如何实现这一功能?我尝试在AR基础模型上使用magick方法__call,但只有在调用的方法具有私有或受保护的作用域时,它才能工作。

谢谢!

回答

0

我建议你将其作为模型行为来实现,并指定它应该在哪些情况下(/不)留下痕迹。

检查出bedezign/yii2-audit,nineinchnick/yii2-audit扩展名。最有可能的是,这个可以立即解决你的问题,否则他们会给你带来灵感来写你自己的。