You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

32 lines
1.1 KiB

from django.contrib.auth.models import User, Group
from rest_framework import serializers
from caremyway.api.models import UserInfo, Client, Provider
class UserInfoSerializer(serializers.ModelSerializer):
class Meta:
model = UserInfo
fields = ('user', 'user_type', 'phone_number')
class ChosenUserInfoSerializer(UserInfoSerializer):
class Meta(UserInfoSerializer.Meta):
read_only_fields = ('user_type',)
class ClientSerializer(serializers.ModelSerializer):
class Meta:
model = Client
fields = ('user', 'business_number')
class ProviderSerializer(serializers.ModelSerializer):
class Meta:
model = Provider
fields = ('user', 'sin')
class UserSerializer(serializers.ModelSerializer):
userinfo = UserInfoSerializer(read_only=True, allow_null=True)
client = ClientSerializer(allow_null=True)
provider = ProviderSerializer(allow_null=True)
class Meta:
model = User
fields = ('username', 'is_active', 'first_name', 'last_name', 'email', 'userinfo', 'client', 'provider')
depth = 1