Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from rest_framework import serializers
- from main_app.models import User, Category, Product, ProductVersion
- class ProductVersionSerializer(serializers.ModelSerializer):
- product = serializers.HyperlinkedRelatedField(
- read_only=True,
- view_name='category-detail',
- lookup_field='pk'
- )
- class Meta:
- model = ProductVersion
- exclude = ()
- class ProductSerializer(serializers.ModelSerializer):
- product_versions = ProductVersionSerializer(many=True)
- class Meta:
- model = Product
- exclude = ()
- class CategorySerializer(serializers.ModelSerializer):
- products = ProductSerializer(many=True)
- class Meta:
- model = Category
- exclude = ()
- class OrderSerializer(serializers.ModelSerializer):
- products = ProductSerializer(many=True)
- class Meta:
- model = Category
- exclude = ()
- class UserSerializer(serializers.ModelSerializer):
- password = serializers.CharField(write_only=True)
- class Meta:
- model = User
- exclude = (
- 'is_superuser',
- 'is_staff',
- 'last_login',
- 'date_joined',
- 'is_active',
- 'groups',
- 'user_permissions',
- )
- def create(self, validated_data):
- user = User(
- email=validated_data['email'],
- username=validated_data['username'],
- first_name=validated_data['first_name'],
- last_name=validated_data['last_name'],
- )
- user.set_password(validated_data['password'])
- user.save()
- return user
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement