Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在使用django创建登录页面时,我遇到了这个错误_Python_Django - Fatal编程技术网

Python 在使用django创建登录页面时,我遇到了这个错误

Python 在使用django创建登录页面时,我遇到了这个错误,python,django,Python,Django,首先,我在用户(我的应用程序)文件夹的模板文件夹中有urls.py `“”“应用程序=用户的URL”“” 然后我得到login()得到了一个意外的关键字参数“template\u name”此错误。所以我一直在互联网上搜索答案,并将其更改为: from django.urls import path from django.contrib.auth.views import LoginView from . import views app_name = 'users' urlpattern

首先,我在用户(我的应用程序)文件夹的模板文件夹中有urls.py

`“”“应用程序=用户的URL”“”

然后我得到login()得到了一个意外的关键字参数“template\u name”此错误。所以我一直在互联网上搜索答案,并将其更改为:

from django.urls import path
from django.contrib.auth.views import LoginView

from . import views

app_name = 'users'
urlpatterns =[
    # Login page
    path('login/', LoginView, {'template_name':'users/login.html'}, name='login'),
然而,我现在得到了这个错误:init()接受1个位置参数,但给出了2个

我的login.html位于模板文件夹中名为users的文件夹中。有人能帮忙吗? 谢谢

来自:

如果您不想调用模板registration/login.html,您可以 可以通过额外参数将template_name参数传递给 作为URLconf中的视图方法。例如,此URLconf行将 改用myapp/login.html:

path('accounts/login/', auth_views.LoginView.as_view(template_name='myapp/login.html')),
更改您必须更改的内容:

path('login/', auth_views.LoginView.as_view(template_name='users/login.html')),

谢谢你抽出时间。”“不调用模板”的意思是,当url匹配时,它只会将其发送到django的登录名,并创建其默认模板?另外,如果我更改了它,页面将无法加载…您会遇到什么错误?你能发布你的
users/login.html
文件的内容吗?您必须为登录创建自己的模板。默认情况下,它被称为
注册/login.html
,因此您必须创建该模板。你说你有一个
users/login.html
,所以改用那个。查看文档以获取可用于测试的该文件的示例内容。它说auth_视图未定义,因此我尝试将LoginView作为auth_视图导入,并提供了AttributeError:type对象“LoginView”没有属性“LoginView”,我将我的html作为答案。因为您是从
auth.View
导入LoginView,只需删除即可登录视图之前的验证视图。另外,不要将对问题的编辑作为答案发布,请使用问题下方的选项进行更改。
path('login/', auth_views.LoginView.as_view(template_name='users/login.html')),