簡體   English   中英

雙加入查詢Rails

[英]Double Join Query Rails

我有三個模型,JobPosting,Job和Organization。 關系如下:

  1. 一個組織有很多工作。
  2. 作業屬於組織,有許多JobPostings。
  3. JobPosting屬於Job。

Job有一個名為job_type的屬性,我可以使用查詢找到與具有特定job_type的Job相關的所有JobPostings:

JobPosting.joins(:job).where(jobs: { :job_type => 'volunteer' })

但我正在努力的是做同樣的事情,但有一個組織屬性。 組織具有名為department的屬性,如何通過具有特定部門的Job查詢與組織相關的JobPosting。 我遇到麻煩的原因是因為組織基本上是兩級,而Job只是一級。

任何幫助將不勝感激。

您可以按如下方式加入這兩種關系:

JobPosting.
  joins(job: :organization).
  where(jobs: { job_type: 'volunteer' }, organizations: { organizations_attr1: 'value_to_test' })

joins(job: :organization)確保您正確地在job_postingsjobsorganizations表之間job_postings內部聯接。 如果要探索Rails如何執行連接,請嘗試使用.to_sqlrails console執行此.to_sql以檢查生成的查詢。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM