Complete primitive backend

This commit is contained in:
Alexander Laevens
2022-11-22 16:16:34 -07:00
commit 35fc396050
29 changed files with 840 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
from rest_framework import serializers
from users.models import User
class UserSerializer(serializers.ModelSerializer): # https://stackoverflow.com/a/29867704/17834235
def create(self, validated_data):
user = User.objects.create()
user.set_password(validated_data["password"])
validated_data.pop("password")
for field in validated_data:
setattr(user, field, validated_data[field])
user.save()
return user
def update(self, instance, validated_data):
if "password" in validated_data:
password = validated_data.pop("password")
instance.set_password(password)
return super().update(instance, validated_data)
class Meta:
model = User
fields = ("id", "username", "email", "password")
write_only_fields = ("password",)
read_only_fields = ("id",)