Issue #17: Obtener usuario sin id
This commit is contained in:
@@ -4,5 +4,6 @@ from users import api_views
|
|||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('user/<int:user_id>', api_views.user_view),
|
path('user/<int:user_id>', api_views.user_view),
|
||||||
|
path('user/', api_views.user_view),
|
||||||
path('user/<int:user_id>/social_networks', api_views.social_networks_view)
|
path('user/<int:user_id>/social_networks', api_views.social_networks_view)
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import json
|
import json
|
||||||
|
|
||||||
|
from django.contrib.auth.models import AnonymousUser
|
||||||
from django.http import JsonResponse
|
from django.http import JsonResponse
|
||||||
from oauth2_provider.decorators import protected_resource
|
from oauth2_provider.decorators import protected_resource
|
||||||
|
|
||||||
@@ -8,10 +9,16 @@ from users.models import User, SocialNetworks
|
|||||||
|
|
||||||
|
|
||||||
def user_view(request, user_id=None):
|
def user_view(request, user_id=None):
|
||||||
user = User.objects.filter(pk=user_id)
|
if user_id:
|
||||||
if user.count() != 1:
|
user = User.objects.filter(pk=user_id)
|
||||||
return JsonResponse({'status': 404, 'error': f'No existe un usuario con id {user_id}'}, status=404)
|
if user.count() != 1:
|
||||||
user = user[0]
|
return JsonResponse({'status': 404, 'error': f'No existe un usuario con id {user_id}'}, status=404)
|
||||||
|
user = user[0]
|
||||||
|
elif request.user and not isinstance(request.user, AnonymousUser):
|
||||||
|
user = request.user
|
||||||
|
else:
|
||||||
|
return JsonResponse({'status': 400, 'error': 'No se entrego un id de usuario ni hay un usuario logeado'},
|
||||||
|
status=400)
|
||||||
|
|
||||||
if request.method == 'GET':
|
if request.method == 'GET':
|
||||||
return _get_user(request, user)
|
return _get_user(request, user)
|
||||||
|
|||||||
Reference in New Issue
Block a user