我在提交测试帖后收到此错误消息:param丢失或值为空:content?

时间:2014-08-28 06:48:58

标签: ruby-on-rails ruby strong-parameters ruby-on-rails-4.1

我正在尝试通过我的表单提交测试帖,我收到此错误:param丢失或值为空:content。我要求“内容”并允许“标题”。在我的应用中提交帖子或“思考”时,这两个字段都已填写。我认为问题与强参数有关。我无法在互联网上的任何其他地方找到答案。这是我的控制器。

class ThoughtsController < ApplicationController
  def index

  end

  def new
    @thought = Thought.new(params[:id])
  end

  def create
    @thought = Thought.new(params[post_params])

    @thought.save

    if @thought.save
        redirect_to @thought 
    else
        render :new
    end
  end


  private
  def post_params
    params.require(:content).permit(:title)
  end

end

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

以下内容应该有效。你可以理解strong_parameters有点不对劲。如果您的思维对象具有:content:title属性,则它们应列在许可括号中 - 这意味着您允许其批量分配。

def create
  @thought = Thought.new(post_params)

    if @thought.save
      redirect_to @post 
    else
      render :new
    end
  end


    private
    def post_params
      params.require(:thought).permit(:content, :title)
    end