【问题标题】:How can I allow spaces in the default django user model username? [duplicate]如何在默认 django 用户模型用户名中允许空格? [复制]
【发布时间】:2020-11-08 22:20:31
【问题描述】:

我试图在 django 用户模型中允许空格,我尝试覆盖它的验证器,但它仍然不起作用。

【问题讨论】:

  • edit 发布您的问题并发布您尝试过的代码,以及任何错误或回溯的完整文本(使用DEBUG=True 运行以捕获它们)。请参阅How to create a Minimal, Complete, and Verifiable Example (MCVE)。
  • 它在一个较旧的项目中,并且没有错误,用户名工作正常但不允许空格

标签: python python-3.x django django-models django-users


【解决方案1】:

django用户名验证器是这样写的

@deconstructible
class UnicodeUsernameValidator(validators.RegexValidator):
    regex = r'^[\w.@+-]+$'
    message = _(
        'Enter a valid username. This value may contain only letters, '
        'numbers, and @/./+/-/_ characters.'
    )
    flags = 0

因此它不允许任何空格字符。

这可能有助于您创建自定义用户模型:

https://testdriven.io/blog/django-custom-user-model/

【讨论】:

  • 那么,验证器的正则表达式不可能覆盖吗?
  • 我实际上正在考虑编写一个自定义用户模型,但是重置密码视图阻碍了我,我不知道如何创建一个。
  • 这有帮助吗? “试图覆盖 Django 用户模型用户名验证 - 堆栈内存溢出”stackoverflow.com/questions/43106049/…
猜你喜欢
  • 1970-01-01
  • 2018-11-19
  • 2017-02-10
  • 1970-01-01
  • 2018-06-12
  • 2017-01-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多