0

嘿,我对在登录控制器处理无效的用户身份验证请求有点困惑。所以,我已经修改了登录视图,但不知道在哪里放置异常处理块。它应该像这样工作:您登录 - 如果它不正确,您将在 /login 看到警告消息。

有任何想法吗 ?

4

2 回答 2

0

你选择了什么策略?在我的自定义策略中,我在我的 User 类上调用类方法“authenticate”:

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-auth-more/mixins/salted_user 的源代码,这是一个自动混合到您的 User 类中的模块。

于 2009-07-14T12:59:03.137 回答
0

你会把你的异常处理动作放在异常控制器中

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

并自定义视图,您将在 app/views/exceptions/not_authorized.html.haml 中创建一个模板

于 2009-08-07T04:37:38.917 回答