私はhas_manyの親を持つUserモデルを持っています。 私はそのユーザーモデルに父親と母親を1つずつ欲しいと思っています。ユーザーhas_many with has_one's
belongs_toの
だから私のクラスの親現在、私はこの問題は私のコントローラである
class User < ActiveRecord::Base
has_many :parents
has_one :father, :class_name => 'Parent', :foreign_key => 'user_id', :conditions => {:type => 'male'}
has_one :mother, :class_name => 'Parent', :foreign_key => 'user_id', :conditions => {:type => 'female'}
end
class Parent < ActiveRecord::Base
belongs_to :user
end
を持っています。
編集に入ると、2つの親をデータベースに作成し、フォームに何も変更しなくてもスローします。たとえば、ユーザーの編集をクリックすると、編集ページに移動します。データベースを調べると、すでに作成されています。
私のフォームはそうのようになります。
= form_for @user do |f|
= f.fields_for :father do |father_form|
etc...
= f.fields_for :mother do |mother_form|
etc...
私は一人で私のコントローラでは、この行に何かを試してみた:
...
@user.parents.build(:type => 'male')
@user.parents.build(:type => 'female')
...
をしかし、フォームは表示されません。
ご協力いただければ幸いです。
なぜユーザーは多くの親を持っていますが、それらを単一の母親と父親に制限されていますか?他のどのような種類の親があなたに期待しているのですか?たぶんあなたは、物事を単純化し始めるhas_many:parentsを持っていなくてもかまいません。 – MrDanA
私が到達しようとしているモデルを描くだけです。 – nbucciarelli