path('accounts/', include(accounts.urls)), NameError: name 'accounts' 没有定义
Posted
技术标签:
【中文标题】path(\'accounts/\', include(accounts.urls)), NameError: name \'accounts\' 没有定义【英文标题】:path('accounts/', include(accounts.urls)), NameError: name 'accounts' is not definedpath('accounts/', include(accounts.urls)), NameError: name 'accounts' 没有定义 【发布时间】:2018-10-06 19:33:23 【问题描述】:我只是在复制 ProductHunt.com 网站,在处理 url 时,我收到了名称错误!当我输入“localhost:8000/accounts/signup”时,它应该带我进入我为测试所做的 html 页面!主要的 urls.py 看起来像:
from django.contrib import admin
from django.urls import path, include
from products import views
urlpatterns = [
path('admin/', admin.site.urls),
path('', views.home, name="home"),
path('accounts/', include(accounts.urls)),
]
因此,它会转到帐户文件夹 urls.py,如下所示: 从 django.urls 导入路径,包括 来自 .import 视图
urlpatterns = [
path('signup', views.signup, name="signup"),
path('login', views.login, name="login"),
path('logout', views.logout, name="logout"),
]
然后进入views.py,它看起来像: from django.shortcuts 导入渲染
def signup(request):
return render(request, 'accounts/signup.html')
def login(request):
return render(request, 'accounts/login.html')
def logout(request):
return render(request, 'accounts/signup.html')
最后我的html是:
% extends 'base.html %
% block content %
signup!
% endblock %
为什么会出现名称错误:
File "C:\Users\Kiran\Desktop\producthunt-project\producthunt\urls.py", line 8,
in <module>
path('accounts/', include(accounts.urls)),
NameError: name 'accounts' is not defined
帮帮我, 谢谢,
【问题讨论】:
因为include(accounts.urls)
。您需要导入名称account
或将其设为字符串。
【参考方案1】:
替换你的代码
urlpatterns = [
...
path('accounts/', include(accounts.urls)),
]
与
urlpatterns = [
...
path('accounts/', include('accounts.urls')),
]
并确保您已在已安装的应用中添加“帐户”。
【讨论】:
以上是关于path('accounts/', include(accounts.urls)), NameError: name 'accounts' 没有定义的主要内容,如果未能解决你的问题,请参考以下文章