对于我正在使用的该应用程序,密码字段应该只能接受数字密码,因为某些特殊用户将只需使用4位数字即可登录其仪表板。
我注释了NumericPassowrdValidator
,但得到KEYERROR - 'NAME'
。我检查了contrib.auth.password_validator
代码以查看是否可以添加选项,并为NumericValidator
设置MinimumLengthValidator
,将true或false设置为NumericValidator
,但找不到类似的东西。
如何避免使用AUTH_PASSWORD_VALIDATORS = [
{
'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
},
{
#'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
},
]
?我想念什么?
if 'C:/Path/Data/%s' % stat:
directory = 'C:/Path/Data/%s' % stat
else:
directory = 'C:/Path/Data/%s' % stat.replace('/', ' ')
if not os.path.exists(directory):
try:
os.makedirs(directory)
except OSError as e:
if not e.errno != errno.EEXIST:
raise
答案 0 :(得分:1)
要禁用验证程序,您需要注释掉(或删除)整个字典,而不仅仅是NAME键:
# {
# 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
# },