Вы можете сделать это методом класса для 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
для пользователя.