Контроль ошибок аутентификации Merb - PullRequest
0 голосов
/ 20 июня 2009

Привет, я немного запутался в обработке неверного запроса аутентификации пользователя на контроллере входа. Итак, я уже изменил вид входа в систему, но не могу понять, куда поместить блок обработки исключений. Он должен работать следующим образом: вы входите в систему - если он неправильный, вы увидите предупреждающее сообщение в / login.

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 07 августа 2009

вы бы поместили свое действие по обработке исключений в контроллер исключений

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

и для настройки представления вы должны создать шаблон в app / views / exceptions / not_authorized.html.haml

0 голосов
/ 14 июля 2009

Какую стратегию вы выбрали? В моей пользовательской стратегии я вызываю метод класса «authenticate» в своем классе User:

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.

...