1

我有两个相关的模型:

class Facility < ActiveRecord::Base
  has_and_belongs_to_many :investigators, class_name: "Person"
  has_and_belongs_to_many :technicians, class_name: "Person"
end

class Person < ActiveRecord::Base
  has_and_belongs_to_many :facilities
end

如果我实例化调查员和技术员,我可以使用例如获得与特定设施相关联的每个人的数量

numtechs = myfacility.technicians.size
numinvests = myfacility.investigators.size 

等等。但是我如何返回与设施相关联的总人数。试

numpeople = myfacility.people.size

似乎不起作用。

有没有办法一口气做到这一点?

谢谢。

4

1 回答 1

0

不。您可以枚举/计数之间没有单一的关联FacilityPeople您已经建立了两个独立的关联,尽管只能从一侧访问。您没有提供任何引用关联的方法,因为在中People没有相应的 HABTM 引用FacilityPeople

您可以将显示的两个关联的大小相加,或者如果您担心关联中的重叠/重复,请枚举/计算唯一User引用。

于 2013-09-26T03:44:52.137 回答