我有一个简单但令人沮丧的问题,即显示帖子评论的验证错误。错误部分显示帖子的错误,但尽管验证适用于评论,但错误不会呈现。
评论表单部分插入后视图:
<%= form_for([@post, @post.comments.build]) do |f| %>
<%= render 'shared/error_messages', object: f.object %>
<p>
<%= f.label :commenter %><br>
<%= f.text_field :commenter %>
</p>
<p>
<%= f.label :body %><br>
<%= f.text_area :body %>
</p>
<p>
<%= f.submit %>
</p>
<% end %>
错误部分
<% if object.errors.any? %>
<h2>Errors:</h2>
<ul>
<% object.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
模型:
class Post < ActiveRecord::Base
has_many :comments, dependent: :destroy
validates :title, :content, :presence => true
validates :title, length: { minimum: 3 }
validates :title, :uniqueness => true
end
class Comment < ActiveRecord::Base
belongs_to :post
validates :body, presence: true
validates :commenter, presence: true, length: { minimum: 3 }
end
我一直在寻找答案,但无法让它发挥作用。
答案 0 :(得分:0)
将此行添加到Post
模型
validates_associated :comments