def get_best_items_for_user(self, user, user_list, item_list, min_value=MIN_RECOMMENDATION_VALUE): user_item_matrix = self.create_matrix(user_list, item_list) recs = utils.get_usb_recommendations(user.id, user_item_matrix) recs.sort(reverse=True) ctype = ContentType.objects.get_for_model(item_list[0]) items = [(value,ctype.get_object_for_this_type(id = rec)) for value,rec in recs if value>min_value] return items
def get_best_users_for_item(self, item, user_list, item_list, min_value=MIN_RECOMMENDATION_VALUE): user_item_matrix = self.create_matrix(user_list, item_list) item_user_matrix = self.rotate_matrix(user_item_matrix) recs = utils.get_usb_recommendations(item.id, item_user_matrix) recs.sort(reverse=True) users = [(value,User.objects.get(id = rec)) for value,rec in recs if value>min_value] return users