Ruby on rails 对于集合,部分渲染次数过多
创建一个简单的博客应用程序 我有这个部分Ruby on rails 对于集合,部分渲染次数过多,ruby-on-rails,ruby,Ruby On Rails,Ruby,创建一个简单的博客应用程序 我有这个部分 .comment %p %b Namn: = comment.name %p %b kommentar: = comment.content %p = link_to 'Destroy Comment', [comment.post, comment], :confirm => 'Are you sure?',
.comment
%p
%b
Namn:
= comment.name
%p
%b
kommentar:
= comment.content
%p
= link_to 'Destroy Comment', [comment.post, comment],
:confirm => 'Are you sure?',
:method => :delete
它是从
= render :partial => 'comment', :collection => @post.comments
它总是将部分渲染为一次到多次
编辑:
它有这种形式
= form_for ([@post,@post.comments.build])
如您问题的评论所述,
@post.comments.build
是罪魁祸首。换成
= form_for ([@post, @post.comments.new])
呈现集合时的附加项应消失
这里有一篇关于build和new的区别的好帖子:你的控制器操作中有@post.comments.build这样的东西吗,或者在视图中有一个表单吗?是的,当我现在在“调用”视图中查看它时,我有表单u([@post,@post.comments.build])使它成为([@post,@post.comments.new])即使有这样的改变,我仍然会尝试收集一个空的。