Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from rest_framework import serializers
- from django.contrib.auth.models import User
- from django.contrib.auth.hashers import make_password
- class UserSerializer(serializers.HyperlinkedModelSerializer):
- password = serializers.CharField(max_length=128, style={'input_type': 'password'}, write_only=True)
- class Meta:
- model = User
- fields = ('url', 'id', 'username', 'email', 'first_name', 'last_name', 'password')
- def create(self, validated_data):
- username = validated_data['username']
- email = validated_data['email']
- first_name = validated_data['first_name']
- last_name = validated_data['last_name']
- password = make_password(validated_data['password'])
- def update(self, instance, validated_data):
- instance.email = validated_data.get('email', instance.email)
- instance.username = validated_data.get('username', instance.username)
- instance.first_name = validated_data.get('first_name', instance.first_name)
- instance.last_name = validated_data.get('last_name', instance.last_name)
- instance.password = make_password(validated_data.get('password', instance.password))
- instance.save()
- return instance
- from urllib import request
- from rest_framework import viewsets, status
- from django.contrib.auth.models import User
- from atest.serializers import UserSerializer
- from rest_framework import permissions
- from atest.permissions import IsOwnerOrReadOnly
- from rest_framework.decorators import action
- from rest_framework.response import Response
- class UserViewSet(viewsets.ModelViewSet):
- """
- This viewset provides operations on Users table to the same user.
- """
- permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsOwnerOrReadOnly]
- queryset = User.objects.all()
- serializer_class = UserSerializer
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement