0

ユーザーがデバイスを介してサインアップすると、新しいパートナー オブジェクトを作成し、ユーザーの作成時にその関係を割り当てようとしています。ここに私が現在持っているものがあります:

models/user.rb

  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable, :token_authenticatable, :omniauthable

  # Setup accessible (or protected) attributes for your model
  attr_accessible :email, :password, :password_confirmation, :remember_me, :admin, :partner_ids, :provider, :uid

  #has_and_belongs_to_many :partners
  has_many :partners, :through => :partners_users
  has_many :partners_users
  accepts_nested_attributes_for :partners_users
  accepts_nested_attributes_for :partners

  def with_partner
    self.partners.build
    self
  end

モード/パートナー.rb

  attr_accessible :name, :address, :verified, :verification_code

  has_many :users, :through => :partners_users
  has_many :partners_users
  has_many :places
  has_many :offers

サインアップフォーム

登録パス(リソース名) do |f| %> アカウント情報 ビジネス情報 5 %> "big fancy button" %>

現在、フォームを送信すると、次のエラーが表示されます。

Can't mass-assign protected attributes: partner

ここで何が間違っていますか?

4

2 に答える 2

0

これを見てください。

accepts_nested_attributes_forモデルを使用すると、データをモデルUserに送信できますPartner

次に、 User モデルで、要求された を設定する必要がありますattr_accessible

attr_accessible : partner_attributes
于 2013-02-01T14:57:31.177 に答える
0

accept_nested_attributes を attr_accessible と共に使用している場合は、属性を attr_accessible に入れる必要があります。

attr_accessible :partner_attributes
于 2013-02-01T14:51:18.737 に答える