def __init__(self, *args, **kwargs):
serializers.ModelSerializer.__init__(self, *args, **kwargs)
queryset = models.PersonEmail.objects.all()
try:
pk = self.context['view'].kwargs['pk']
except KeyError:
pk = None
if pk is not None:
try:
queryset = queryset.exclude(person__id=pk)
except ValueError:
queryset = queryset.exclude(person__nb_id=pk)
self.fields['address'] = serializers.EmailField(
max_length=254,
validators=[UniqueValidator(queryset=queryset)])
python类EmailField()的实例源码
validators.py 文件源码
项目:django-open-volunteering-platform
作者: OpenVolunteeringPlatform
项目源码
文件源码
阅读 34
收藏 0
点赞 0
评论 0
def invite_email_validator(email):
try:
validate_email(email)
except ValidationError as e:
return True # we let serializers.EmailField validation handle invalid emails
try:
User.objects.get(email=email)
except User.DoesNotExist:
raise serializers.ValidationError("This user is not valid.")
def test_should_email_convert_string():
assert_conversion(serializers.EmailField, graphene.String)
def __init__(self, allow_extra):
class Model(serializers.Serializer):
id = serializers.IntegerField()
client_name = serializers.CharField(max_length=255)
sort_index = serializers.FloatField()
# client_email = serializers.EmailField(required=False, allow_null=True)
client_phone = serializers.CharField(max_length=255, required=False, allow_null=True)
class Location(serializers.Serializer):
latitude = serializers.FloatField(required=False, allow_null=True)
longitude = serializers.FloatField(required=False, allow_null=True)
location = Location(required=False, allow_null=True)
contractor = serializers.IntegerField(required=False, allow_null=True, min_value=0)
upstream_http_referrer = serializers.CharField(max_length=1023, required=False, allow_null=True)
grecaptcha_response = serializers.CharField(min_length=20, max_length=1000)
last_updated = serializers.DateTimeField(required=False, allow_null=True)
class Skill(serializers.Serializer):
subject = serializers.CharField()
subject_id = serializers.IntegerField()
category = serializers.CharField()
qual_level = serializers.CharField()
qual_level_id = serializers.IntegerField()
qual_level_ranking = serializers.FloatField(default=0)
skills = serializers.ListField(child=Skill())
self.allow_extra = allow_extra # unused
self.serializer = Model