Сообщения об ошибках валидации без атрибута - PullRequest
7 голосов
/ 28 июля 2011

Я пытаюсь показать пользовательские сообщения об ошибках без имени атрибута впереди.Раньше я делал это с гемом custom_error_message, однако он не работает с Rails 3.1

То, что я сейчас пытаюсь сделать в create.js.erb:

alert("<%= @post.errors[:title] %>")

Что возвращает

[&quot;Here goes my custom message?&quot;]

У меня вопрос - как убрать скобки и ", чтобы осталось только сообщение. Я вставлю его на страницу, используя jquery.

1 Ответ

20 голосов
/ 28 июля 2011

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

errors.add(:base, "Here goes my custom message")

Что касается скобок и кавычек, я думаю, это зависит от того, как вы устанавливаете свои ошибки. Когда вы просто скажете @post.errors[:base], он вернет массив. Это предупреждение буквально выплевывает массив. Возможно, вы захотите перебрать ошибки или просто набрать .first, если есть только одна.

Кроме того, вызов .html_safe позаботится о проблеме &quot;.

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