Как отобразить сообщение об ошибке на модели в рельсах - PullRequest
1 голос
/ 21 августа 2009

Мне нужно отобразить сообщение об ошибке на модели в рельсах,

моя кодировка на модели такая,

if my_address.valid?
  # I need here the validation error.
   return nil
end

Я использовал error.add («Неверный адрес»), но он не работает

помогите пожалуйста решить эту проблему,

Ответы [ 2 ]

3 голосов
/ 21 августа 2009

Вы сможете получить доступ к ошибкам через object.errors, т.е. для вашего случая my_address.errors. Он вернет объекты Error, вы можете проверить это здесь: http://api.rubyonrails.org/classes/ActiveRecord/Errors.html

2 голосов
/ 21 августа 2009

Я предлагаю взглянуть на то, как леса (script/generate scaffold my_model) отображают ошибки проверки.

Вот краткое резюме:

def create
  @post = Post.new(params[:post])

  if @post.save # .save checks .valid?
    # Do stuff on successful save
  else
    render :action => "new"
  end
end

В «новом» виде вы будете использовать @post.errors, скорее всего, с <%= error_messages_for :post %>.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...