[英]Double Join Query Rails
我有三個模型,JobPosting,Job和Organization。 關系如下:
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_postings
, jobs
和organizations
表之間job_postings
內部聯接。 如果要探索Rails如何執行連接,請嘗試使用.to_sql
在rails console
執行此.to_sql
以檢查生成的查詢。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.