我正在使用Authlogic。我有一個Entry
模型,並且有一個驗證方法,如果請求是由登錄用戶創建的(匿名用戶也允許創建條目),我想跳過該方法。我認爲UserSession.find
將不可用在Entry
模型中,就像它來自控制器一樣。處理這種情況的最佳方法是什麼?我是否需要編寫某種自定義的保存方法,並從EntriesController
以編程方式調用它?或者有沒有辦法從模型中檢查登錄狀態?我猜我不想這樣做,因爲模型應該負責對象狀態而不是應用程序狀態。Authlogic:如果用戶登錄,繞過模型驗證
1
A
回答
2
在Entry
上創建一個名爲logged_in
的虛擬屬性。
attr_accessor :logged_in
在控制器中,如果用戶已登錄,假如果沒有設置entry.logged_in
爲true。然後你可以在驗證方法中使用該屬性。
validate_on_create :my_check
def my_check
unless self.logged_in?
# add errors
end
end
0
您可以使用
valide_on_create :my_check, :unless => logged_in?
相關問題
- 1. 通過Authlogic客戶,登錄和密碼驗證用戶
- 2. 模型驗證被繞過
- 3. Cakephp身份驗證:繞過登錄
- 4. Authlogic:驗證登錄名/密碼
- 5. Backbone.js模型驗證用於創建用戶和登錄用戶
- 6. 如何在使用openid登錄後繞過LDAP身份驗證?
- 7. 如果用戶通過身份驗證,繞過nginx緩存Django
- 8. 驗證用戶登錄
- 9. 驗證如果Facebook帳戶存在 - 不想通過FB登錄
- 10. Firebase + Swift:繞過用戶登錄屏幕
- 11. 防止用戶繞過驗證
- 12. Authlogic和Android,驗證用戶憑證
- 13. Xamarin.Forms:如何驗證用戶登錄?
- 14. 用戶登錄而使用RSpec和authlogic
- 15. 如何創建過程,用於驗證用戶登錄
- 16. 如何繞過yii驗證?
- 17. 繞過curl驗證
- 18. SailsCasts用戶模型驗證
- 19. 驗證用戶使用LDAP登錄
- 20. 獲取用於驗證用戶登錄
- 21. Authlogic:如何查找用戶是否因爲用戶未登錄而未登錄
- 22. 登錄並繞過登錄屏幕
- 23. Laravel驗證計數用戶登錄
- 24. C#Windows服務登錄驗證用戶
- 25. yii用戶登錄後頁面驗證
- 26. CakePHP登錄用戶名/密碼驗證
- 27. 登錄後重新驗證Facebook用戶
- 28. 驗證Facebook用戶沒有Facebook登錄
- 29. RESTEasy中的用戶登錄驗證java
- 30. 模型和模型視圖驗證,如果ModelView使用模型
有這個模型裏面沒有'LOGGED_IN?'功能。 – 2010-02-10 21:25:30