serializers.py 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. from rest_framework import serializers
  2. from desecapi.models import Domain, Donation, User
  3. from djoser import serializers as djoserSerializers
  4. class DomainSerializer(serializers.ModelSerializer):
  5. owner = serializers.ReadOnlyField(source='owner.email')
  6. name = serializers.RegexField(regex=r'^[A-Za-z0-9\.\-]+$',trim_whitespace=False)
  7. class Meta:
  8. model = Domain
  9. fields = ('name', 'owner', 'arecord', 'aaaarecord', 'created', 'updated')
  10. read_only_fields = ('created', 'updated',)
  11. class DonationSerializer(serializers.ModelSerializer):
  12. class Meta:
  13. model = Donation
  14. fields = ('name', 'iban', 'bic', 'amount', 'message', 'email')
  15. class UserSerializer(djoserSerializers.UserSerializer):
  16. class Meta(djoserSerializers.UserSerializer.Meta):
  17. fields = tuple(User.REQUIRED_FIELDS) + (
  18. User.USERNAME_FIELD,
  19. )
  20. class UserRegistrationSerializer(djoserSerializers.UserRegistrationSerializer):
  21. class Meta(djoserSerializers.UserRegistrationSerializer.Meta):
  22. fields = tuple(User.REQUIRED_FIELDS) + (
  23. User.USERNAME_FIELD,
  24. 'password',
  25. )