對於路徑標誌後,您可以執行以下操作:識別用戶登錄後出來after_sign_out_path_for方法設計
def after_sign_in_path_for(resource)
if resource.class == User
if resource.sign_in_count < 2
'/dashboard'
else
'/dashboard/home'
end
elsif resource.class == AdminUser
I18n.locale = "en"
'/admin/dashboard'
else
I18n.locale = "en"
'/'
end
end
但是,我怎麼能確認我的用戶是User
或sign_out
後AdminUser
?
def after_sign_out_path_for(resource_or_scope)
if resource_or_scope == AdminUser
這是行不通的。有沒有辦法檢查它?
注意:儘管我已經做了一個猴子補丁並且爲admin定義了新的root,並且我的問題已經解決,但是我想知道是否有任何方法可以使用Devise的after_sign_out_path_for
方法實現?
好,謝謝......不過這是我已經知道了。設計中沒有直接檢查的方法嗎? (雖然我知道問題是會話被破壞。) – 2013-03-19 13:40:22