Rails:两个’where’查询 – 每个查询单独工作,但不能一起工作
我想写一些类似的东西:
@meeting_requests = Meeting.where('meeting_time >= ? AND requestee_id IS ? AND status = ?', Date.today, nil, "Active") .joins(:requestor) .where('birthyear >= ? AND birthyear <= ?', current_user.birthyear - 10, current_user.birthyear + 10 )
这有效:
@meeting_requests = Meeting.where('meeting_time >= ? AND requestee_id IS ? AND status = ?', Date.today, nil, "Active")
这有效:
@meeting_requests = Meeting.joins(:requestor) .where('birthyear >= ? AND birthyear <= ?', current_user.birthyear - 10, current_user.birthyear + 10 )
这样的事情有效:
Meeting.joins(:requestor).where('birthyear > ?', 1900).where(status: "Active")
但我需要在meeting_time上做一个更大的查询,所以我需要把它写成一个字符串我想?
但是两个sql查询一起产生的错误是: ambiguous column name: status: SELECT
我觉得我太近了……我在这里错过了什么?
当不清楚列来自哪个表时,会出现此消息。 这应该工作:
...rest_of_statement.where('meetings.status' => 'Active')
- ActiveRecord :: StatementInvalid:ArgumentError:负字符串大小(或大小太大):SELECT * FROM
- Rails accepted_nested_attributes_for child在validation时没有父集
- 如何在Rails 3.2中翻译ActiveRecord属性名称?
- 如何在Ruby on Rails中为所有模型动态更改Active Record数据库?
- ruby on rails 3使用缓存数据重新加载
- Railsvalidation上下文
- 如何获取触发查询的代码行?
- 优雅的PostgreSQL Group for Ruby on Rails / ActiveRecord
- 需要使用范围嵌套连接的ActiveRelation