def get_user(cls, user):
"""Get user object:
1º check if user is already User, LocalProxy, or AnnonymousUser object
if so, just return it
2º if not, search for this user and return if found.
3º otherwise, return DoesNotExists exception"""
if any([isinstance(user, obj) for obj in [UserMixin,
AnonymousUserMixin]]):
return user
if isinstance(user, LocalProxy):
return user._get_current_object()
try:
return User.objects.get(username=user)
except (me.DoesNotExist, me.ValidationError):
return User.objects.get(id=user)
评论列表
文章目录