首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >rails模型报告/报告

rails模型报告/报告
EN

Stack Overflow用户
提问于 2013-08-15 15:32:11
回答 1查看 292关注 0票数 1

嗨,我只创建了一个与其他人的关系模型,但我对rails的多元化选项感到惊讶。我是说。

我创建了这样的模型:

代码语言:javascript
复制
rails g model Report name:string....

就像我对:

代码语言:javascript
复制
rails g model Patient name:string...
rails g model Doctor name:string....

医生有很多病人,所以我可以去控制台输入:

代码语言:javascript
复制
patient.doctor => gives me the doctor from a patient
doctor.patients => gives me all patients from a doctor (note patients in plural)

奇怪的是,我对report也做了同样的事情,我希望得到命令:

代码语言:javascript
复制
patient.reports (note plural)

但是,如果我想检索病人报告,我必须这样做:

代码语言:javascript
复制
patient.report (note singular)... AND IT WORKS!

有人能照亮我的失明吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-15 15:50:01

检索相关对象的方法取决于您在模型中声明它的方式。

下面是一些例子:

代码语言:javascript
复制
class Patient < ActiveRecord::Base
  belongs_to :doctor # singular
end

class Doctor < ActiveRecord::Base
  has_many :patients # plural
end

然后你就可以:

代码语言:javascript
复制
patient.doctor # => return the associated doctor if exists
doctor.patients # => return the patients of this doctor if exist

我想你已经用单数声明了你的关系:

代码语言:javascript
复制
# What I think you have
class Patient < ActiveRecord::Base
  has_many :report
end

但你应该在这里用复数:

代码语言:javascript
复制
# What I think you should use
class Patient < ActiveRecord::Base
  has_many :reports
                  ^
                  # Make it plural
end
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18256114

复制
相关文章

相似问题

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