1
我試圖從用戶患疾病A.
老問題(錯誤的)得到所有其他疾病:
我試圖讓用戶對一些患有疾病也遭受其他疾病:
class User
has_many :treatments
end
class Disease
has_many :treatments
end
class Treatment
belongs_to :user
belongs_to :disease
end
我有一些工作代碼:
找誰對特定疾病折磨的所有用戶的ID:
user_ids = Treatment.joins(:user).where(disease_id: 250).pluck(:user_id)
獲得基於用戶ID的所有疾病
Disease.where("id != 250").where(id: Treatment.select("DISTINCT disease_id").where(user_id: user_ids))
有沒有更簡單的方法?也許一個查詢?
對不起,我問錯了問題; /它應該是:我找不爲用戶疾病。因此,首先我尋找所有患有疾病A的用戶,然後我需要該用戶列出其他疾病。 – dzejdzej
已將編輯添加到我的答案中。 – hedgesky
完美!非常感謝! – dzejdzej