ActiveModel :: ForbiddenAttributesError使用旧版本的Ruby? [重复]

问题描述 投票:0回答:1

这个问题已经在这里有了答案:

我正在使用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

谢谢您的帮助

ruby ruby-on-rails-4 ruby-on-rails-3.2
1个回答
1
投票

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

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

© www.soinside.com 2019 - 2024. All rights reserved.