add: add new api for bot
This commit is contained in:
@@ -7,4 +7,3 @@ from core.apps.shared.models.base import BaseModel
|
|||||||
class User(AbstractUser, BaseModel):
|
class User(AbstractUser, BaseModel):
|
||||||
tg_id = models.CharField(max_length=20, null=True, blank=True)
|
tg_id = models.CharField(max_length=20, null=True, blank=True)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -17,3 +17,11 @@ class CustomUserLoginSerializer(serializers.Serializer):
|
|||||||
user.save()
|
user.save()
|
||||||
data['user'] = user
|
data['user'] = user
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
||||||
|
class UserListSerializer(serializers.ModelSerializer):
|
||||||
|
class Meta:
|
||||||
|
model = User
|
||||||
|
fields = [
|
||||||
|
'id', 'tg_id'
|
||||||
|
]
|
||||||
@@ -9,4 +9,5 @@ urlpatterns = [
|
|||||||
path('login/', user.UserLoginApiView.as_view()),
|
path('login/', user.UserLoginApiView.as_view()),
|
||||||
path('<uuid:product_id>/like/', like_views.LikeApiView.as_view()),
|
path('<uuid:product_id>/like/', like_views.LikeApiView.as_view()),
|
||||||
path('liked_products/', like_views.LikeProductListApiView.as_view()),
|
path('liked_products/', like_views.LikeProductListApiView.as_view()),
|
||||||
|
path('user/list/', user.UserListApiView.as_view()),
|
||||||
]
|
]
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
from rest_framework import generics
|
from rest_framework import generics, views
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
|
|
||||||
from rest_framework_simplejwt.tokens import RefreshToken
|
from rest_framework_simplejwt.tokens import RefreshToken
|
||||||
|
|
||||||
from ..serializers.user import CustomUserLoginSerializer
|
from ..serializers.user import CustomUserLoginSerializer, UserListSerializer
|
||||||
from core.apps.accounts.models import User
|
from core.apps.accounts.models import User
|
||||||
|
|
||||||
|
|
||||||
@@ -18,3 +18,11 @@ class UserLoginApiView(generics.GenericAPIView):
|
|||||||
token = RefreshToken.for_user(user)
|
token = RefreshToken.for_user(user)
|
||||||
return Response({'access': str(token.access_token), 'refresh': str(token)})
|
return Response({'access': str(token.access_token), 'refresh': str(token)})
|
||||||
return Response(data=serializer.errors)
|
return Response(data=serializer.errors)
|
||||||
|
|
||||||
|
|
||||||
|
class UserListApiView(views.APIView):
|
||||||
|
def get(self, request):
|
||||||
|
users = User.objects.exclude(tg_id__isnull=True)
|
||||||
|
serializer = UserListSerializer(users, many=True)
|
||||||
|
return Response(serializer.data, status=200)
|
||||||
|
|
||||||
Reference in New Issue
Block a user