Как я могу отловить ошибки проверки в моем контроллере - PullRequest
1 голос
/ 09 сентября 2010

У меня есть такая модель:

class Schedules < ActiveRecord::Base
  validates_presence_of :scheduleTime
end

У меня нет представления, так как мой контроллер работает только как говорящий веб-сервис JSON, но я бы хотел "отловить" все ошибки валидации (в будущем будет больше валидаций) из модели в контроллере, и верните сообщение об ошибке / код в моем ответе JSON.

Как я могу это сделать?

Спасибо

Ответы [ 2 ]

1 голос
/ 12 сентября 2010

schedule.save (false) будет игнорировать все ошибки проверки, и это не то, что я хочу.Вот что я сделал, есть ли лучший способ?

if schedule.save
  render :json => schedule.id
else
  err_json = "err:"
  schedule.errors.each do |attr_name, message|
    if message == "is invalid"#field is invalid
      case attr_name
        when "from"
          err_json  err_json
end

Спасибо

0 голосов
/ 10 сентября 2010

Вы должны быть в состоянии сделать

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