Как добавить пользовательские ошибки в коллекцию пользовательских ошибок? - PullRequest
37 голосов
/ 16 марта 2011

Как добавить ошибки в модель User вручную?

Это просто @user.errors << "some text goes here"?

Ответы [ 4 ]

96 голосов
/ 16 марта 2011
 @user.errors.add(:email, "Not valid")

Если вы не хотите использовать какие-либо атрибуты, то в вашей модели

 @user.errors[:base] << "This person is invalid because ..."

Подробнее: ссылка

14 голосов
/ 20 апреля 2017

ПРЕДУПРЕЖДЕНИЕ

Если вы просто добавляете ошибки в отдельном методе (не в проверке), то по умолчанию при вызове .valid? или .save эти ошибки будут автоматически очищается .Поэтому вы можете вместо этого использовать контексты проверки .

7 голосов
/ 16 марта 2011

Используйте метод errors.add

Пример:

@user.errors.add(:name, "wasn't filled in")
2 голосов
/ 26 октября 2016

попробуйте это:

errors.add(:base, "#{user.full_name} has errors here!")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...