2016-09-06 119 views
1

我需要YII2 web-app的高級日誌系統。Yii2高級日誌記錄

在我的應用程序模型(從基本活動記錄模型擴展)中,我需要特定的模型方法在DB中記錄此操作。

例如,我需要登錄關於創建/更新/刪除模型的數據庫信息。但是模型屬性之一 - 視圖的數量。所以當我只更新這個屬性時。 - 我們不需要記錄此操作。

在我的日誌表中,我需要插入下一個字段:model name,modelId,time,userId。另外,將來我希望設置在已記錄方法的數組列表中,以及基本模型檢查列表中,並且如果此數組中存在方法 - 將日誌操作寫入數據庫。

我該如何實現這一功能?我嘗試在AR基礎模型上使用magick方法__call,但只有在調用的方法具有私有或受保護的作用域時,它才能工作。

謝謝!

回答

0

我建議你將其作爲模型行爲來實現,並指定它應該在哪些情況下(/不)留下痕跡。

檢查出bedezign/yii2-audit,nineinchnick/yii2-audit擴展名。最有可能的是,這個可以立即解決你的問題,否則他們會給你帶來靈感來寫你自己的。