【发布时间】:2023-03-09 23:33:01
【问题描述】:
我的用户不是很聪明。他们偶尔会尝试使用以空格开头或结尾的用户名进行注册,然后在注册失败时感到困惑。如何自动去除这些空格?
(覆盖 clean_username 似乎不起作用,因为该字段是 RegexField,并且我认为验证几乎在字段实例化时抛出错误,当给定的字符串不符合正则表达式时)。
【问题讨论】:
标签: django django-forms validation django-registration
我的用户不是很聪明。他们偶尔会尝试使用以空格开头或结尾的用户名进行注册,然后在注册失败时感到困惑。如何自动去除这些空格?
(覆盖 clean_username 似乎不起作用,因为该字段是 RegexField,并且我认为验证几乎在字段实例化时抛出错误,当给定的字符串不符合正则表达式时)。
【问题讨论】:
标签: django django-forms validation django-registration
您可能希望覆盖表单本身的 clean() 方法,然后对用户名数据运行 strip(),然后调用 super().clean()。
您可以在文档中查看事件顺序,以帮助您了解正则表达式验证器何时运行。 https://docs.djangoproject.com/en/dev/ref/forms/validation/#form-and-field-validation
【讨论】: