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.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

29 rivejä
933 B

  1. from rest_framework import serializers
  2. from common.serializers import BankDetailsSerializer, AddressSerializer
  3. from .models import Employee,Role
  4. from common.models import BankDetails, Address
  5. class EmployeeSerializer(serializers.ModelSerializer):
  6. bank_details = BankDetailsSerializer()
  7. address = AddressSerializer()
  8. class Meta:
  9. model = Employee
  10. fields = '__all__'
  11. def create(self, validated_data):
  12. bank_details_data = validated_data.pop('bank_details')
  13. address_data = validated_data.pop('address')
  14. bank_details = BankDetails.objects.create(**bank_details_data)
  15. address = Address.objects.create(**address_data)
  16. employee = Employee.objects.create(bank_details=bank_details, address=address, **validated_data)
  17. return employee
  18. class RoleSerializer(serializers.ModelSerializer):
  19. class Meta:
  20. model = Role
  21. fields = '__all__'