1
我正在嘗試在創建,更新,刪除調用時爲我的模型存儲一些日誌數據。我想在請求中存儲請求中的一些數據以及一些用戶數據(使用express.js)。Sequelize通過鉤子獲取請求數據?
在鉤子中,我有一些記錄模塊。
hooks: {
afterCreate: function (order, options, done) {
// How to get user data stored in express request.
return app.log.set('event', [{message: 'created', data: order, userId: 1}, done]);
}
}
...
該模塊只是在表中記錄。然而,這是我遇到麻煩的userId
部分。我正在使用passport
模塊,它存儲在請求中,那麼如何才能將用戶對象(或任何外部對象)存入模型鉤子?
我想避免在控制器或其他任何地方使用它,因爲可能會有一些腳本或其他命令可能會輸入數據。
雖然周圍的''req''通過是一個工作和透明的解決方案,我覺得它很奇怪和煩人,只是爲了記錄。您可能想要查看continuation-local-storage(https://www.npmjs.com/package/continuation-local-storage)來存儲數據,以便每個「logger.log」函數都可以訪問任何地方它被稱爲。從理論上講,它應該在實踐中工作 - 從未嘗試過。 – tiblu