def post(self, request, format=None): """[summary] Arguments: request {[type]} -- [description] Keyword Arguments: format {[type]} -- [description] (default: {None}) Returns: [type] -- [description] """ data = request.data serializer = UserSerializer(data=request.data) if serializer.is_valid(): try: name = User.objects.get(name=request.data["name"]) return Response({"message": "User already exists"}, status=status.HTTP_409_CONFLICT) except User.DoesNotExist: serializer.save() return Response(serializer.data, status=status.HTTP_201_CREATED) return Response(serializer.data, status=status.HTTP_400_BAD_REQUEST)
def put(request): if request.user.is_authenticated: print(request.POST) s = UserSerializer(instance=request.user, data=request.POST) print(s) if s.is_valid(): s.save() return Response({'message': 'profile edited!'}, status=201) else: return Response({'message': 'you are not login!'}, status=401)
class CartListSerializer(serializers.ModelSerializer): user = UserSerializer(read_only=True) product = ProductListSerializer(read_only=True) class Meta: model = CartList fields = ('product', 'id', 'quantity', 'user')
class CartDetailSerializer(serializers.ModelSerializer): customer = UserSerializer(read_only=True) product = serializers.SerializerMethodField() user = Userserializer(read_only=True) product = ProductListSerializer(read_only=True) class Meta: model = CartList fields = ('id', 'customer', 'user', 'items', 'created', 'updated')
class CartSerializer(serializers.ModelSerializer): """Serializer for the Cart model.""" customer = UserSerializer(read_only=True) # used to represent the target of the relationship using its __unicode__ method items = serializers.StringRelatedField(many=True) class Meta: model = Cart fields = ('id', 'customer', 'created', 'items')
def profile(request): if request.user.is_authenticated: # data = { # 'username': request.user.username, # 'email' : request.user.email # } serializer = UserSerializer(request.user) a = serializer.data return JsonResponse({'profile': a}, status=200) else: return JsonResponse({'message': 'you are not login'}, status=401)
def put(self, request, id, format=None): """[summary] Arguments: request {[type]} -- [description] id {[type]} -- [description] Keyword Arguments: format {[type]} -- [description] (default: {None}) Returns: [type] -- [description] """ try: user = User.objects.get(id=id) serializer = UserSerializer(user, data=request.data) if serializer.is_valid(): serializer.save() return Response(serializer.data, status=status.HTTP_200_OK) except: return Response(serializer.errors, status=status.HTTP_404_NOT_FOUND)
def register(request): print(request.POST) try: data = request.POST serializer = UserSerializer(data=data) u = serializer s = serializer.is_valid() if s : u.save() return JsonResponse({ 'message' : 'saved' }, status=201) else: return JsonResponse( { 'message' : 'request wrong' },status=400 ) except IntegrityError: return JsonResponse({ 'message' : 'username was token !' }, status=400)
class SubscriptionDetailSerializer(serializers.ModelSerializer): user = UserSerializer(read_only=True) class Meta: model = Subscription fields = ( 'user', 'id', 'name', 'price', 'duration', 'timestamp', 'active', )
def get(self, request, format=None): """[summary] Arguments: request {[type]} -- [description] Keyword Arguments: format {[type]} -- [description] (default: {None}) Returns: [type] -- [description] """ users = User.objects.all() serializer = UserSerializer(users, many=True) return Response(serializer.data)
def get(self, request, id, format=None): """[summary] Arguments: request {[type]} -- [description] id {[type]} -- [description] Keyword Arguments: format {[type]} -- [description] (default: {None}) Returns: [type] -- [description] """ try: user = User.objects.get(id=id) serializer = UserSerializer(user) return Response(serializer.data, status=status.HTTP_200_OK) except: return Response({"message": "user does not exists"}, status=status.HTTP_404_NOT_FOUND)
class EnrollStatusSerializer(serializers.Serializer): """ The serializer for enroll status. """ user = UserSerializer(read_only=True) student = StudentSerializer(read_only=True)