python - 如何更改 LoginView 中调用的 AuthenticationForm 标签以及如何在 LoginView 中使用另一个表单?(Django 3.0)
问题描述
我正在学习 Django 3.0,实际上我正在使用django.contrib.auth.views.LoginView
这是我的views.py
文件:
from django.contrib.auth.views import LoginView
class CustomLoginView(LoginView):
template_name = "blog/loginview.html"
这是我的urls.py
文件:
from django.contrib.auth.views import LoginView
from django.conf.urls import url
urlpattenrs = [
url(r'^login/$', views.CustomLoginView.as_view(), name='login')
]
我知道我可以将所有内容都放在 url 中,而无需做出自己的看法,但我想对其进行测试。
这是我的模板:
<h1>Connection with LoginView</h1>
<form method="POST" action=".">
{% csrf_token %}
{{ form.as_p }}
<input type="hidden" name="next" value="{{ next }}" />
<input type="submit" value="Connect" />
</form>
一切正常,但在我的页面上,我可以看到默认AuthenticationForm
使用的默认标签LoginView
。这些是Username:
和Password:
。
现在这是我的问题:
是否可以将标签更改为
foo
代替模板,Username:
而bar
不是Password:
模板并将其保留{{ form.as_p }}
在模板中?或者更好的是,将标签从CustomLoginView
?是否可以使用自定义表单
CustomLoginView
?甚至更好,直接在LoginView
?
解决方案
是的,可以更改标签,但它将在forms.py
文件中,这是一个示例:
class ChildForm(forms.ModelForm):
class Meta:
model=Child_detail
fields="__all__"
labels={
'username':'foo',
'passowrd':'bar',
}
推荐阅读
- javascript - 我应该在 vuex 状态下初始化哪种类型的数据以及何时初始化?
- mysql - 使用临时表的命令不同步 MySql PyQt5
- autohotkey - 对 CreateCaret 的 Autohotkey DLLcall 返回 0(函数失败)但 A_LastError 也是 0(函数成功)
- javascript - Javascript - for 循环中的计算
- python - 如何通过Rpy2(v3)在Python中使用R中的`hclust`函数?
- javascript - 如何使用 JSON 文件中的内容填充 Google Maps API InfoWindow
- r - R lm 捕获交互项,但不是分类变量
- css - 使用 jsoup 从 NBA 网站上抓取姓名
- node.js - Artifacts Feed 中的上游包在第一次 npm 安装后未上传包
- r - 执行数据库查询时,R 中仍然出现内存错误。在我的代码中添加了连接,但它们并没有停止错误