首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >支持多种模型的Rails3作用域

支持多种模型的Rails3作用域
EN

Stack Overflow用户
提问于 2012-08-02 08:37:03
回答 2查看 374关注 0票数 0

以下是我的模型:

患者:

代码语言:javascript
复制
has_many :patient_records

PatientRecord:

代码语言:javascript
复制
belongs_to :patient
has_many :progress_reports

ProgressReport:

代码语言:javascript
复制
has_one :patient_record

我试图生成的查询是在包含或连接患者记录表的同时,获取progress_reports大于或等于7天的所有患者(使用progress_reports中的date_of_report列)……我在这方面工作了很长时间,结果遇到了麻烦。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-02 12:01:32

我会尝试:

代码语言:javascript
复制
scope :recent_patients, lambda 
{ |since_when| join(:progress_reports)
  .where("progress_reports.created_at >= ?", since_when)}

Patient模型中

票数 2
EN

Stack Overflow用户

发布于 2012-08-02 11:51:46

代码语言:javascript
复制
reports = ProgressReport.where(:created_at > 7.days.ago).all

如果要获取属于每条记录的每个患者,请执行以下操作:

代码语言:javascript
复制
reports.each do |r|
   puts r.patient.name
end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11769510

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档