我的項目中的所有模型都有created_by和updated_by。 Created_by在創建時由current_user設置,updated_by在更新時由current_user設置。有沒有辦法編寫一個全局方法來管理?編寫由current_user設置created_by和updated_by的全局方法
3
A
回答
1
我寫了一個寶石,做它 - https://github.com/house9/clerk
正是在這個時候
- 您的數據庫列必須命名爲created_by_id和updated_by_id對數據庫中的表不是很配置
檢查自述文件以獲取更多信息
0
全球範圍內做到這一點的一種方法是實施ActiveRecord::Observer
。觀察者可以一次「觀察」多個模型並檢查其生命週期回調。因此,在您的觀察者中,您可以指定要觀察的所有模型,並定義after_create
和after_update
方法,以便在數據庫中執行所需的任何更新。
請參閱Rails 3 Observer -- looking to learn how to implement an Observer for multiple models。
+0
但是,是否會導致對數據庫進行兩次保存請求?例如。首先保存就是必須保存的東西。其次是保存created_by和updated_by。對? – Pykih
相關問題
- 1. after_save回調將updated_by列設置爲current_user
- 2. 在Symfony 2中自動更新created_by和updated_by值
- 3. jQuery valdiator方法的全局設置
- 4. 寫入Android 4.2中的全局設置
- 5. 設計不是current_user方法?
- 6. 爲路由設置全局主機
- 7. distinct_ created_by和total_amount for each created_by
- 8. Flash AS3全局安全設置 - 以編程方式
- 9. 全局配置文件寫入編碼
- 10. 設置全局輸出的編碼
- 11. 設計,未定義的局部變量或方法current_user
- 12. Spring Security全局方法安全位置
- 13. 編寫一個全局方法來檢查NuxtJS中的驗證
- 14. 全局函數和方法
- 15. 未定義的局部變量或方法`CURRENT_USER「使用設計和軌道3.2
- 16. 如何編寫獲取和設置陣列的方法
- 17. 設計和current_user
- 18. 設計和current_user
- 19. 使用設計器的Current_user方法
- 20. 全局方法?
- 21. 全局設置error_handler
- 22. parsley.js全局設置
- 23. 將全局網站設置存儲在可由管理員編輯的Rails中的好方法是什麼?
- 24. 地理編碼和設置全局變量的iOS
- 25. 重置全局設置路由後綴symfony中的routing.yml文件
- 26. 的Android 6,設置全局設置WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN
- 27. 編寫一個爲特定事件設置全局變量的jQuery函數的好方法?
- 28. 如何以編程方式爲IIS6設置全局MIME類型?
- 29. 以編程方式在windows中設置全局環境變量
- 30. 編寫PDO查詢的安全方法
謝謝。這有幫助! – Pykih