我有两个相关的模型:
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
似乎不起作用。
有没有办法一举做到这一点?
感谢。
答案 0 :(得分:0)
没有。您可以枚举/计算Facility
和People
之间没有单一关联。您已经设置了两个单独的关联,尽管只能从一侧访问。您没有提供任何方式来引用People
中的关联,因为Facility
中没有对People
的相应HABTM引用。
您可以将您显示的两个关联的大小相加,或者如果您担心关联中的重叠/重复,则枚举/计算唯一的User
引用。