Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 4 Rails 4-分配属性时,必须将哈希作为参数传递_Ruby On Rails 4 - Fatal编程技术网

Ruby on rails 4 Rails 4-分配属性时,必须将哈希作为参数传递

Ruby on rails 4 Rails 4-分配属性时,必须将哈希作为参数传递,ruby-on-rails-4,Ruby On Rails 4,有人能帮我找出为什么我会出现以下错误吗 When assigning attributes, you must pass a hash as an argument. 表格: <%= form_for([current_user, current_user.suggestions.build]) do |f| %> <%= f.label :category %>: <%= f.select :category, ['Sta

有人能帮我找出为什么我会出现以下错误吗

When assigning attributes, you must pass a hash as an argument.
表格:

    <%= form_for([current_user, current_user.suggestions.build]) do |f| %>
        <%= f.label :category %>:
        <%= f.select :category, ['Startup', 'Cars', 'Kids', 'Food', 'Other'] %> <br>
        <%= f.text_area :suggestion %><br>
        <%= f.submit 'Submit Suggestion' %>
    <% end %>
应用程序控制器:

  def create
    @suggestion = current_user.suggestions.create(suggestion_params)
  end

  private
    def suggestion_params
      params.require(:suggestion).permit(:suggestion, :category)
      redirect_to shirts_path
    end
  helper_method :current_user

  private

    def current_user
      @current_user ||= User.find(session[:user_id]) if session[:user_id]
    end

suggestion\u params
正在返回方法的最后一行
重定向到当前用户的路径
。suggestions.create无法接受,因为它是不可接受的数据

重定向应在
create
方法中:

def create
    @suggestion = current_user.suggestions.create(suggestion_params)
    redirect_to shirts_path
end

private
  def suggestion_params
    params.require(:suggestion).permit(:suggestion, :category)
  end

天哪,我犯了个愚蠢的错误。谢谢你的帮助!