1

Rails は初めてなので、ご容赦ください…</p>

2 つの異なるモデルに関連する一連のデータを作成しようとしています。私は現在、次のモデルを持っています。

class M < ActiveRecord::Base
 belongs_to :u
 belongs_to :s
end

class U < ActiveRecord::Base
 has_many :m
 has_many :s, :through => m:
end

class S < ActiveRecord::Base
 has_many :m
 has_many :u, :through => m;
end

このシステムでは、ユーザーは多数の Us と S を作成できます。しかし、M を作成するときは、「u」と「s」への参照が存在することを確認する必要があります。

私は次のことができることを知っています:

m1 = M.create()
u1.ms << m1
s1.ms << m1

適切な参照がすべて含まれているのはどれですか。より良い方法はありますか?

4

1 に答える 1

0

one_u.s = one_sまたは のいずれかを実行できるはずですone_s.u = one_u

Rails Guidesによると、新しいMモデルは によって管理されActiveRecordます。has_many共通の関連付けのように属性を設定するだけで、M行が作成 (および削除) されます。

于 2011-04-17T07:58:32.917 に答える