Rob*_*ers 4 sql activerecord ruby-on-rails ruby-on-rails-3
我有三个模型,JobPosting,Job和Organization.关系如下:
Job有一个名为的属性job_type,我可以job_type使用查询找到与具有特定作业的Job相关的所有JobPostings :
JobPosting.joins(:job).where(jobs: { :job_type => 'volunteer' })
Run Code Online (Sandbox Code Playgroud)
但我正在努力的是做同样的事情,但有一个组织属性.组织有一个名为的属性department,如何通过具有特定部门的作业查询与组织相关的JobPosting.我遇到麻烦的原因是因为组织基本上是两级,而Job只是一级.
任何帮助将不胜感激.
您可以按如下方式加入这两种关系:
JobPosting.
joins(job: :organization).
where(jobs: { job_type: 'volunteer' }, organizations: { organizations_attr1: 'value_to_test' })
Run Code Online (Sandbox Code Playgroud)
joins(job: :organization)确保你有内部之间的连接job_postings,jobs以及organizations正确的表格.如果要探索Rails如何执行连接,请尝试在rails consolewith中执行此操作.to_sql以检查生成的查询.
| 归档时间: |
|
| 查看次数: |
1465 次 |
| 最近记录: |