验证django DRF中的字段,使其可以将电子邮件或电话作为值

问题描述 投票:0回答:1

我想创建一个序列化程序,让用户使用其用户名或电话号码登录,现在,如果他们使用电话号码或用户名,则需要其他验证。

我知道我可以在视图中实现此目标,但是,我正在寻找一种解决方案,以在序列化程序中处理这种情况。

python django django-rest-framework serializer
1个回答
0
投票

例如,在DRF中,可以通过以下代码使用validate方法:

if '@' in data['value']:
    # the validation for email should be done here
    validator = EmailValidator()
    validator(data['value'])
    return data
else:
    # here the mobile number should be validated
    pass
© www.soinside.com 2019 - 2024. All rights reserved.