0

別の 2 つのオブジェクトを属性として持つオブジェクトを作成するフォームを作成する必要がありますが、これらのオブジェクトは、それらのオブジェクトのテンプレートを含むドロップダウン リストから使用できる必要があります。

class User < ActiveRecord::Base
    accepts_nested_attributes_for :adresses, :profiles
end

class Address < ActiveRecord::Base
    attr_accessible :city, :country
    belongs_to :user
end

class Profile < ActiveRecord::Base
    attr_accessible :nickname, :password
    belongs_to :user
end

注意が必要な部分は、ユーザーには「address_id」または「profiles_id」という列がないことです。すべては、ユーザーと同じ瞬間に作成されているプロファイルとアドレスに移動する必要があります (テンプレートと同じ属性を持っています)。本当にいくつかの助けを借りて、完全なコードソリューションを説明しないでください。しかし、いくつかのヒントがあればいいでしょう

4

1 に答える 1

2

このセットアップを試してください:

class User < ActiveRecord::Base
  has_one :address
  has_one :profile

  accepts_nested_attributes_for :address, :profile
  attr_accessible :adress_attributes, :profile_attributes
end

class Address < ActiveRecord::Base
  attr_accessible :city, :country
  belongs_to :user
end

class Profile < ActiveRecord::Base
  attr_accessible :nickname, :password
  belongs_to :user
end

ドキュメントを参照

于 2013-07-06T17:46:35.460 に答える