Django 如何自定义登录和注册表单的ID属性?

Django 如何自定义登录和注册表单的ID属性?,django,Django,我在表单中有两个类。py: class LoginForm(AuthenticationForm): ''' Form to log in a user ''' error_messages= { "invalid_login": _("Incorrect %(username)s/password combo") } username= forms.EmailField(label=_("Email"), widget=forms.TextInput(attrs={"placeh

我在
表单中有两个类。py

class LoginForm(AuthenticationForm):
 '''
 Form to log in a user
 '''
 error_messages= {
 "invalid_login": _("Incorrect %(username)s/password combo")
 }
 username= forms.EmailField(label=_("Email"), widget=forms.TextInput(attrs={"placeholder":"Email"}))
 password= forms.CharField(label=_("Password"), widget=forms.PasswordInput(attrs={"placeholder":"Password"}))

class RegisterForm(UserCreationForm):
 '''
 Form that makes user using just email as username
 '''
 error_messages= {
  "password_mismatch": _("Passwords do not match."),
  "duplicate_email": _("Email already exists."),
  "unique": _("Email already exists"),
 }
 username= forms.EmailField(label=_("Email"), widget=forms.TextInput(attrs={"placeholder":"Email"}))
 password1= forms.CharField(label=_("Password"), widget=forms.PasswordInput(attrs={"placeholder":"Password"}))
 password2= forms.CharField(label=_("Password confirmation"), widget=forms.PasswordInput(attrs={"placeholder":"Confirm password"}))

 class Meta:
  model= User
  fields= ("username",)
我将它们都加载到
login\u register.html
,如下视图所示:

def login_register(request, template="pages/login_register.html"):
 registration_form= RegisterForm()
 login_form= LoginForm()
 return render(request, template, {"registration_form": registration_form, "login_form": login_form})

但是当它们都加载到页面上时,这会导致页面有两个
input
标记,它们都具有
id
属性
id\u username
。如何更改表单的
输入标记的
id
属性?

尝试将
id
属性添加到其中一个文件:

username= forms.EmailField(label=_("Email"), widget=forms.TextInput(attrs={"placeholder":"Email", "id": "id_login_username"}))

尝试将
id
属性添加到其中一个文件:

username= forms.EmailField(label=_("Email"), widget=forms.TextInput(attrs={"placeholder":"Email", "id": "id_login_username"}))

只需更改变量名。只需更改变量名。