这是完成我的第一个 Rails 应用程序的最后一个项目,需要一些帮助。在每个用户配置文件(localhost:3000/users/username)上,都有一个用户发布的帖子列表。与每个帖子相关的是评论。所以 post_id: 3 可以有评论。
我已经在视图表单中工作了,但是当单击每个帖子下的“评论”链接时,我需要评论出现在弹出窗口中。我已经应用了 facebox,它是一个基于 jQuery 的灯箱,可以显示弹出窗口。
我只需要将 show.html.erb 中当前显示的内容移动到弹出窗口中。
有 _comment_form.html.erb 渲染成 _post.html.erb
<%= link_to #, :rel => "facebox-#{post.id}" do %>
+<%= post.comments.count.to_s %>
<% end %>
<div class ="ItemComments"><% if post.comments.exists? %>
<% post.comments.each do |comment| %>
<%= image_tag("http://www.gravatar.com/avatar.php?gravatar_id=#{Digest::MD5::hexdigest(comment.user.email)}" %>
<span class="users"><%= link_to comment.user.name, comment.user %></span>
<span class="timestamp"><%= time_ago_in_words(comment.created_at) %> ago</span>
<span class="content2"><%= comment.comment_content %></span>
<% end %>
<% end %></div>
上面的渲染到 _post.html.erb 使用:
<%= render 'shared/comment_form', post: post if signed_in?%>
然后渲染成 show.html.erb
我正在尝试使用这条线,但我要将它链接到什么?
<%= link_to #, :rel => "facebox-#{post.id}" do %>
+<%= post.comments.count.to_s %>
<% end %>
这是 shared/_comment.html.erb
<% if post.comments.exists? %>
<% post.comments.each do |comment| %>
<%= image_tag("http://www.gravatar.com/avatar.php?gravatar") %>
<%= link_to comment.user.name, comment.user %>
<span class="timestamp"><%= time_ago_in_words(comment.created_at) %> ago</span>
<span class="content2"><%= comment.comment_content %></span>
<% end %>
<% end %>