使用旧版ruby的ActiveModel :: ForbiddenAttributesError?

时间:2014-11-24 05:18:09

标签: ruby ruby-on-rails-4 ruby-on-rails-3.2

我正在使用ruby on rails创建一个博客。我正在关注在rails上使用旧版本的教程。我想在同一页面上发布关于博客文章的评论。每当我点击提交按钮,我都会收到此错误消息。  ::加载ActiveModel ForbiddenAttributesError

提取的来源(第44行):

def create
@post = Post.find(params[:post_id])
@comment= @post.comments.new(params[:comment])

respond_to do |format|
  if @comment.save

这是我控制器里面的代码

def create
  @post = Post.find(params[:post_id])
  @comment= @post.comments.build(params[:comment])

  respond_to do |format|
    if @comment.save
      format.html { redirect_to @post, notice: 'Comment was successfully created.' }
      format.json { render json: @post, status: :created, location: @comment }
    else
      format.html { render action: "new" }
      format.json { render json: @post.errors, status: :unprocessable_entity }
    end
  end

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

我猜您正在使用Rails 4.如果是这样,必须在控制器中将所需参数标记为必需参数。

您可以参考http://stackoverflow.com/questions/17868427/rails-4-activemodelforbiddenattributeserror