Ruby on rails 4 如何将嵌套属性添加到designe的允许参数中,以使嵌套表单正常工作

Ruby on rails 4 如何将嵌套属性添加到designe的允许参数中,以使嵌套表单正常工作,ruby-on-rails-4,devise,nested-forms,railsapps,Ruby On Rails 4,Devise,Nested Forms,Railsapps,我在跑步: 轨道4.1.4 设计3.3 我使用RailsApp starter应用程序设置Desive和pundit。现在我在保存嵌套的表单属性时遇到问题。我得到一个错误: Unpermitted parameters: players 我编辑了初始值设定项文件以显示: def configure_permitted_parameters devise_parameter_sanitizer.for(:sign_up) { |u| u.permit(:first_name, :last

我在跑步:

  • 轨道4.1.4
  • 设计3.3
我使用RailsApp starter应用程序设置Desive和pundit。现在我在保存嵌套的表单属性时遇到问题。我得到一个错误:

Unpermitted parameters: players
我编辑了初始值设定项文件以显示:

def configure_permitted_parameters
  devise_parameter_sanitizer.for(:sign_up) { |u| u.permit(:first_name, :last_name, :players, :player_attributes => [:position]) }
  devise_parameter_sanitizer.for(:account_update) { |u| u.permit(:first_name, :last_name, :role, :players, :player_attributes => [:position]) }
end
我的模型是:

class Users < ActiveRecord::Base
    has_one :player

    accepts_nested_attributes_for :player
end
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
class Players < ActiveRecord::Base
    belongs_to :user
end

我做错了什么?

我按照本指南设法使嵌套属性正常工作


谢谢,这很有帮助!
def update
  @player = Player.find[params[:id])
  if @player.update_attributes(secure_params)
     redirect_to players_path, :notice => "Player updated"
  else
     redirect_to players_path, :alert => "Unable to update"
  end
end

private

def secure_params
  params.require(:user).permit(:user_id, :players)
end