我正在构建一个blogapp并允许用户使用他们的名字对帖子发表评论,如果用户未登录,则会显示为anonamys。它的工作,但在我的浏览器中,它显示了一个充满评论的数组。我该如何摆脱它。在我的评论控制器
中def create
params.permit!
@post = Post.find(params[:post_id])
@comment.user_id = current_user.id if current_user || nil
@comment.save
redirect_to post_path(@post)
end
以形式部分评论
<%= form_for [@post, @post.comments.build] do |f| %>
在我的帖子控制器显示操作
中<h4><%= @post.comments.count %> Comments</h4>
<%= render partial: "comments/comment" %>
<%= render partial: "comments/form" %>
在我的评论部分我有
<%= @post.comments.each do |comment| %>
<p class="comment_name"><strong><%= (comment.user.user_name if comment.user) || "Anonymous" %></strong></p>
<p class="comment_body"><%= comment.body %></p>
<p class="comment_time"><%= time_ago_in_words(comment.created_at) %> Ago</p>
我浏览器中的数组消息显示为
[#<Comment id: 13, name: nil, body: "nice pic", post_id: 17, created_at: "2015-09-27 20:54:22", updated_at: "2015-09-27 20:54:22", user_id: 8>, #<Comment id: 14, name: "sss", body: "sssss", post_id: 17, created_at: "2015-09-27 21:41:13", updated_at: "2015-09-27 21:41:13", user_id: nil>]
我不知道错误发生的地方。提前谢谢。
答案 0 :(得分:0)
问题出在这一行
<%= @post.comments.each do |comment| %>
应该是
<% @post.comments.each do |comment| %>
请注意将<%= %>
更改为<% %>
。
<% %>
- 执行语句。
<%= %>
- 打印输出。