def get_user_info(self, user_id=None, username=None): from models import Profile, Subscribed if user_id: users_set = User.objects.filter(pk=user_id) elif username: users_set = User.objects.filter(username=username) else: users_set = User.objects.filter(pk=self.user.pk) users = Profile.attach_user_info(users_set) users = Subscribed.join_is_subscribed(self.user, users) try: return users[0] except IndexError: raise UserInterfaceError("Unknown user, sorry.")
def user_list(request, my_readers=False, i_read=False, username=None): if username: user = get_object_or_404(User, username=username) else: user = request.user if not user.is_authenticated(): i_read = False my_readers = False users = User.objects.filter().select_related("profile").exclude(username='******') if i_read: users = User.objects.filter(subscribed_user__user=user, subscribed_user__is_deleted=False) elif my_readers: users = User.objects.filter(me_subscribe__subscribed_user=user, me_subscribe__is_deleted=False) users = Profile.attach_user_info(users).order_by('-my_readers_count')[:100] context = {} context['users'] = users return render_template(request, 'blog/user_list.html', context)