この問題は数回は参照されていますが、あまりにも完全ではありません。私は、単一のモデルのための結合テーブルの使用に問題があります。たとえば、ユーザーとハイファイブがあるとします。 Highfivesは2人のユーザーのハイキングのための結合表に過ぎません。 、私がすべき本当に単一のテーブルからの複数の参照
SELECT "highfives".* FROM "highfives" WHERE "highfives"."user_id" = 1
:それはのようなクエリを生成するのでこれで、私は(1).highfives User.findような何かを行うことができません、しかし
class Highfive < ActiveRecord::Base
belongs_to :user1,
:class_name => "User"
belongs_to :user2,
:class_name => "User"
end
class User < ActiveRecord::Base
has_many :highfives
end
:だから私はこれを持っています
SELECT "highfives".* FROM "highfives" WHERE "highfives"."user1_id" = 1 or "highfives"."user2_id" = 1
私は想像しています。何らかの方法で自分のユーザーモデルを変更する必要があります。しかし、私は何が欠けていますか?
ありがとうございました。
これはとても簡単です。なぜ私はそれを見落としたのか分かりません。ありがとう! –