我需要创建一个表单,它将创建另外两个对象作为属性的对象,但这些对象应该可以从包含这些对象模板的下拉列表中获得。
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',一切都应该转到配置文件和地址,它们与用户在同一时刻创建(它们与模板具有相同的属性) ) 我真的可以使用一些帮助,不要解释完整的代码解决方案,但一些提示会很好
答案 0 :(得分: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
请参阅doc