Лучший способ получить доступ к отдельной ошибке Rails ActiveRecord? - PullRequest
2 голосов
/ 08 сентября 2010

Я пытаюсь получить доступ к атрибуту типа объекта ActiveRecord :: Error. Я делаю это потому, что хочу перенаправить пользователя на другую страницу в зависимости от типа неудачной проверки (атрибут может не пройти проверку несколькими способами, поэтому сам атрибут недостаточен).

Я нашел только один способ сделать это:

obj.errors.instance_variable_get(:@errors)["attr"][0].type

что просто противно. Есть ли лучший способ?

1 Ответ

2 голосов
/ 08 сентября 2010

Похоже, вам лучше всего продлить ActiveRecord::Errors.

class ActiveRecord::Errors
  def error_type(attr)
    @errors[attr] && @errors[attr].first.type
  end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...