如何从 Django 的 UserCreationForm 中的用户名字段禁用自动对焦?

How to disable autofocus from username field in Django's UserCreationForm?

我正在使用 UserCreationForm class 在我的 Django 应用程序中创建一个注册页面。

这是我定义 SingUpForm:

的代码
class SignUpForm(UserCreationForm):
    email = ...
    username = forms.CharField(label="Username",
        widget=forms.TextInput(attrs={
            ...
            "autofocus": False,
            ...
        }))
    password1 = ...
    password2 = ...

尽管 autofocus 属性设置为 False,但当我在浏览器中打开表单时,焦点仍位于 username 字段上。

如何禁用它?

自动对焦在 UserCreationForm__init__ 中被覆盖(参见 here)。
您应该尝试通过在 SignUpForm 中添加 __init__ 来使用相同的技术:

def __init__(self, *args, **kwargs):
    super().__init__(*args, **kwargs)
    self.fields['username'].widget.attrs.update({'autofocus': False})