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' 没有定义的主要内容,如果未能解决你的问题,请参考以下文章

Django url显示错误:未解决的引用。

从数组中渲染 Material-UI 图标

Django URL 标记不起作用 - NoReverseMatch

按键精灵脚本

文件和文件夹的操作

python + selenium 实现 华为商城自动抢购