2015-10-17 43 views
0

以下其中条件混合父和子rails4条件属性

Contractor.includes(:contractorusers).where(['building_id = ? AND contractorusers.user_id = ?', 21, 72]).all 

产生抱怨,这根据数据库PG::UndefinedTable: ERROR: missing FROM-clause entry for table "contractorusers"尽管数据库不具有定义

create_table "contractorusers", force: :cascade do |t| 
    t.integer "contractor_id" 
    t.integer "user_id" 

因此语法明确需要修复。怎么样?

你写将无法正常工作,包括将在母先打电话让相关ID的合同,然后将搜索与IDS的阵列contractorusers

回答

0

查询由父查询返回。

试试这个:

Contractor.joins(:contractorusers).where("building_id = ? AND contractorusers.user_id = ?", 21, 72)