Сообщение об ошибке пользовательской проверки Rails - PullRequest
2 голосов
/ 17 февраля 2011

Не вдаваясь во все javascript для текстового поля, я бы хотел следующую проверку:

validates_length_of :brief_description,
  :maximum=>250, 
  :message => "Brief is #{self.brief_description.length} long (max is 250)"

Но ссылка на self.brief_description в сообщении не работаетКакой лучший способ сделать это?

Я тоже пробовал # {params [: краткое_description] .length}, но модель ничего не знает о параметрах ...

1 Ответ

1 голос
/ 17 февраля 2011

Я могу ошибаться, но я думаю, что вы можете попробовать заключить строку в одинарные кавычки, и это может отложить оценку строки до времени выполнения.

Если не считать этого, вы можете написать пользовательскую проверку (в которой не используется макрос validates_length_of) и сделать что-то вроде:

def validate_brief_description
  errors.add :brief_description, "Brief is #{brief_description.length} long (max is 250)" if brief_description.length > 250
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...