Я хочу показать пользователю сообщение об ошибке, если его комментарий слишком короткий - PullRequest
0 голосов
/ 11 июля 2019

Я выполняю функцию на своем веб-сайте начальника, то есть, если человек записывает комментарии, содержащие не более 5 слов, я бы показал ему сообщение об ошибке с надписью

1 ошибка запретила сохранение вашего комментария * комментарий слишком короткий (минимум 5 символов).

У меня нет большого опыта работы с рельсами и рубином, но мой начальник попросил меня сделать это.

<div class="container text-center">
  <%= form_for([ @article, @article.comments.build ], local: true) do |form| %>

    <p>
      <%= form.label :commenter %><br>
      <%= form.text_field :commenter %>
    </p>

    <p>
      <%= form.label :body %><br>
      <%= form.text_area :body %>
    </p>

    <p>
      <%= form.submit %>
    </p>
  <% end %>
</div>

1 Ответ

0 голосов
/ 11 июля 2019

Добавьте это в вашу модель (comment.rb?):
validates :text, length: { minimum: 5 } (изменить :text на имя поля, которое должно быть проверено)

Загрузите https://github.com/ryanb/nifty-generators/blob/master/lib/generators/nifty/layout/templates/error_messages_helper.rb или https://github.com/ryanb/nifty-generators/blob/master/lib/generators/nifty/layout/templates/error_messages_helper.rb в свой проект (в каталог app/helpers).

Добавьте <%= f.error_messages %> в свой шаблон (ниже <%= form_for ... do |f| %>)

Дополнительная информация о проверке:
https://guides.rubyonrails.org/active_record_validations.html#length

http://railscasts.com/episodes/211-validations-in-rails-3?view=asciicast

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