Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
Dieses Repo ist archiviert. Du kannst Dateien sehen und es klonen, kannst aber nicht pushen oder Issues/Pull-Requests öffnen.

29 Zeilen
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__'