2009-06-20 79 views
0

嘿,那裏,我有點在處理無效的用戶身份驗證請求,在登錄控制器感到困惑。所以,我已經修改了登錄視圖,但不知道在哪裏放置異常處理塊。它應該像這樣工作:您登錄 - 如果它不正確,您將在/ login處看到警告消息。控制Merb身份驗證錯誤

任何想法?

回答

0

您選擇了哪種策略?在我的自定義策略,我呼籲我的用戶類的類方法「認證」:

class User 
    def self.authenticate(login, password) 
    u = User.first(:conditions => ['email = ?', login]) # find a user with this login 
    if u && u.authenticated? 
     return u 
    else 
     nil 
    end 
    end 
end 

此外,您可能想看看Merb的認證 - 多/混入/ salted_user的源代碼,這是一個模塊它會自動混合到您的User類中。

0

你會把你的異常處理動作異常控制器

# handle NotAuthorized exceptions (403) 
def not_authorized 
    render :format => :html 
end 

和定製你需要在app /視圖/例外模板視圖/ not_authorized.html.haml