django - 在 django 身份验证中为电子邮件字段设置空白 = False
问题描述
我正在使用 django 内置身份验证,对于该身份验证系统,我们获得了不同的字段,例如用户名、电子邮件、密码等。
Username
默认情况下是必需的,也不是空白的,但对于电子邮件,它不是必需的(即它为空),这也使它成为空白。
现在为了使它成为必需,我添加了这段代码;
extra_kwags = {'email': {'required': True}}
我尝试了同样的方法blank
;
extra_kwags = {'email': {'required': True, 'blank': False}}
但它给出的错误blank
是不是一个有效的关键字。
所以我想知道是否有办法blank=False
在 django 中设置电子邮件字段。
虽然我知道一种方法是强制执行 email_verification 并使电子邮件成为认证方式;
ACCOUNT_AUTHENTICATION_METHOD = 'email'
ACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_EMAIL_VERIFICATION = 'mandatory'
但我想知道是否有另一种方法,因为我不希望它制作 authentication_method。
解决方案
allow_blank
该选项在休息框架文档中命名
所以你可以使用它并且验证应该可以工作
from rest_framework.serializers import ModelSerializer
class YourUserSerializer(ModelSerializer):
...
class Meta:
model = YourUserModel
extra_kwargs = {'email': {'required': True, 'allow_blank': False}}
推荐阅读
- python - Matplotlib 图像显示在 Heroku 中托管的 Flask 应用程序上
- flutter - Flutter:如何制作屏幕的可滚动菜单?
- github - 我可以像在 github 或 gitlab 上那样在 Sonatype nexus3 存储库中存储和访问文件吗?
- c# - 如何在字符串变量中运行 ASM 操作码或将其转换为字节?
- python - 在 CPU 上使用卷积层时出错
- linux - BASH Shellscript 从文件夹路径获取用户名
- c++ - 何时使用 else if 而不是 if?
- php - 网页抓取 PHP
- linux - 将 ssh 密钥添加到 github 的问题 - 权限被拒绝
- sqlite - SQLite:计算计数器在当前日期和星期内如何增加