Skip to content
Jacob Haslehurst edited this page Feb 27, 2014 · 1 revision
user = User.objects.first()
user2 = User.objects.last()
article = Article.objects.first()

# make single user follow object
user.follow(article)
# make single user unfollow object
user.unfollow(article)
# check if user is following an object
user.is_following(article)
# make set/list of users follow object
Follow.objects.create_batch(users=[user, user2], target=article)
# make group of users unfollow object
Follow.objects.filter(user_id__in=[user.id, user2.id], target=...).delete()  # look to make this nicer
# batch set users' follow status on an object
Follow.objects.update_batch(target=article, users_follow=[(user, True), (user2, False)])
# see all objects a user follows
user.get_follow_set()
# see all objects of a given type that a user follows
user.get_follow_set(model=Article)
# see all followers of a given object
article.get_follower_set()
or related_name??

## THINGS TO RESEARCH

# if a user tries to follow an object already being followed, raise an exception?
    # look for precedents set in other libs
Clone this wiki locally