在我的博客应用中显示一系列消息

时间:2015-09-28 07:49:37

标签: ruby-on-rails-4

我正在构建一个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>]

我不知道错误发生的地方。提前谢谢。

1 个答案:

答案 0 :(得分:0)

问题出在这一行

<%= @post.comments.each do |comment| %>

应该是

<% @post.comments.each do |comment| %>

请注意将<%= %>更改为<% %>

<% %> - 执行语句。 <%= %> - 打印输出。