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

fre*_*erk 2 python django django-forms autofocus

我正在使用该类UserCreationForm在 Django 应用程序中创建注册页面。

这是定义我的代码SingUpForm

class SignUpForm(UserCreationForm):
    email = ...
    username = forms.CharField(label="Username",
        widget=forms.TextInput(attrs={
            ...
            "autofocus": False,
            ...
        }))
    password1 = ...
    password2 = ...
Run Code Online (Sandbox Code Playgroud)

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

我怎样才能禁用它?

Ben*_*b96 5

自动对焦在(请参阅此处__init__)中被覆盖。您应该尝试通过添加以下内容 来使用相同的技术:UserCreationForm
__init__SignUpForm

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