我有三个表:User,User_Interest和Interest
我怎样才能获得其中一个用户没有的兴趣名称?
(我已经为所有人设置了模型。)
感谢您的帮助。
答案 0 :(得分:0)
您可以将其设置为User上的类方法,或特定用户的实例方法。对于类方法,请尝试以下方法:
def self.missing_interests(user)
difference = Interest.all - user.interests
difference.map { |d| d.name }
end
并使用User.missing_interests(some_user)
进行调用。例如,尝试
def missing_interests
difference = Interest.all - interests
difference.map { |d| d.name }
end
并使用missing = some_user.missing_interests
致电。
这应该返回一个数组,其中包含用户interests
关联中未包含的所有兴趣的名称。