Отображение сообщений об ошибках внутри страницы другого контроллера - PullRequest
0 голосов
/ 07 февраля 2012

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

<%= form_for([@post, @post.comments.build]) do |f| %>
  <div class="field">
    <%= f.label :commenter %><br />
    <%= f.text_field :commenter %>
  </div>
  <div class="field">
    <%= f.label :body %><br />
    <%= f.text_area :body %>
  </div>
  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

Однако я хочу запретить пользователям публиковать более одного комментария к конкретному сообщению. Как бы я поступил так? Я работал с валидаторами, но, похоже, не могу добавить, что могу добавлять ошибки и отображать их на странице сообщений # show.

1 Ответ

0 голосов
/ 16 февраля 2012

Проблема была на самом деле в моем контроллере.Поскольку submissions является вложенным ресурсом posts, мне нужно переустановить @post перед вызовом render 'posts/show' в случае ошибки.Это работает, однако вы заметите, что в конечном итоге вы получите URL-адрес, например /posts/4/submissions/, с соответствующей веб-страницей, а не /posts/4

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