我使用代表连接的模型实现了habtm关系(因为连接具有属性):
class Person
has_many :person_photos
end
class PersonPhoto
# has a person and a photo id, and a couple of
# other attributes that aren't relevant
end
class Photo
has_many :person_photos
end
我想在Photo类中添加一个方法,以获取该照片中不的人员列表。对于我的生活,我无法弄清楚。这很容易吗?
答案 0 :(得分:1)
在照片模型中尝试一下......
def people_not_tagged
People.where("id NOT IN (?)", people_ids.empty? ? "" : people_ids)
end
答案 1 :(得分:0)
您可以尝试通过person_photos拍摄人物has_many照片,并通过person_photos尝试照片has_many人。
的Rails文档然后photo.find(1)。人们会列出照片1中的所有人
然后使用数组减法people_not_in_photo = People.all - photo.find(1)。我想,人们会给你你想要的东西。
上的Stackoverflow问题