允许用户在页面上发表评论和加载评论时出错

时间:2015-02-09 05:49:07

标签: ruby-on-rails comments

我收到以下错误:

syntax error, unexpected keyword_end, expecting end-of-input

这是我的Comments_controller文件,

class CommentsController < ApplicationController
  def create
    @post = Post.find(params[:post_id])
    @comment = @post.comments.build(params[:comment])
    @comment.save

    redirect_to @posts

  end

  def destroy
  end

  end
end

这是使用它的HTML,

<h1><%= @post.title %></h1>

<%= @post.text %>
<h2>Comments</h2>

<% @post.comments.each do |comment| %>
    <p><%= comment.text %></p>
    <p><%= time_ago_in_words comment.created_at %> ago </p>
<% end %>

<%= form_for [@post, @post.comments.build] do |f| %>
    <p><%= f.text_area :text, :size => "40x10" %></p>
    <p><%= f.submit "Post Comment" %></p>
<% end %>

<p>
<%= link_to "Back", posts_path %>
|
<%= link_to "Edit", edit_post_path(@post) %> 
|
<%= link_to "Delete", @post, method: :delete, data: { confirm: 'Are you sure?' } %>
</p>

因此,当用户发布评论或用户尝试加载评论页面时,会发生此错误。

2 个答案:

答案 0 :(得分:0)

class CommentsController < ApplicationController 
 def create 
   @post = Post.find(params[:post_id])
   @comment = @post.comments.build(params[:comment])
   @comment.save
   redirect_to @posts
 end
 def destroy 

 end
end

答案 1 :(得分:0)

您的控制器代码中的一端是额外的