0
我有一个有关系的用户的台式Task
- 作为asignee和记者使用“包括” SQL Rails的模型内部查询
class Task < ActiveRecord
belongs_to :assignee, class_name: 'User'
belongs_to :reporter, class_name: 'User'
end
在SQL我想选择任务,其中受让人具有特定名称
Task.includes(:assignee, :reporter).where('assignee.first_name = ?', 'Filip')
但此查询提出:
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: missing FROM-clause entry for table "assignee"
我可以打电话
Task.includes(:assignee, :reporter).where('user.first_name = ?', 'Filip')
但它从两个受让人和记者
如何添加在where子句仅参考受让人关系条件返回记录?
出于好奇,什么是'模型:'用户'选项?我会假设它应该是'class_name:'User'',但可能是我错过了什么 –
@AndreyDeineko好抓,我的意思是class_name。我用手写这个例子:) –