我正在构建一个 reddit 克隆(仅用于练习)),并且在新评论回复表单方面遇到问题。我用过this构建多态评论的教程,一切正常,但我想在回复下方添加新评论回复的表单,以便您单击链接并显示表单(默认情况下隐藏带有表单的 div)。但似乎该表单会针对我在表单中生成的每个新对象而出现,所以这只是无限循环。有没有办法创建评论回复表单?
这是我的_form:
= form_for comment do |f|
p
= f.label :body
= f.text_area :body
= f.hidden_field :link_id, value: params[:link_id]
- if params[:link_id]
= hidden_field_tag :link_id, params[:link_id]
- if params[:comment_id]
= hidden_field_tag :comment_id, params[:comment_id]
= f.submit "Create", class: "button tiny"
以及_comment部分:
li.comment
p = comment.body
p = link_to "Add a reply", "", class: "reply_link"
.comment_form
= render 'comments/form', comment: comment.comments.build
- unless comment.comments.empty?
ul.comments_list
= render partial: 'comments/comment', collection: comment.comments
最佳答案
我用下面的 jQuery 解决了这个问题。
$(document).ready(function() {
$('.partner-area').click(function() {
$(this).next('.partner-offices').slideToggle(500);
});
});
上面的 .partner-area
是要单击的链接的类,.partner-offices
是我的表单的类名称。这基本上是说,当单击任何链接时,下一个表单都会以动画形式打开并打开。
表单上的默认 css display:hidden
关于ruby-on-rails - Rails 多态注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34977083/