You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django访问/logs触发NameError: name 'logs' is not defined问题求助

解决Django中NameError: name 'logs' is not defined的问题

嘿,我一眼就揪出问题所在啦!你在main/urls.py里直接写了include(logs.urls),但完全没导入logs这个应用模块,Django根本不知道logs是什么,自然就抛出这个NameError了。下面一步步帮你搞定:

1. 修复主urls.py的导入问题

你有两种简洁的解决方式:

方式一:直接导入logs应用

在main/urls.py顶部添加导入语句:

from django.conf.urls import include, url
from django.contrib import admin
# 新增这行,导入logs应用
import logs

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^logs/', include(logs.urls)),
]

方式二:直接导入logs的urls模块(更推荐)

这种写法更清晰,还能避免潜在的命名冲突:

from django.conf.urls import include, url
from django.contrib import admin
# 直接导入logs的urls模块并起别名
from logs import urls as logs_urls

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^logs/', include(logs_urls)),
]

2. 别忘了把logs应用加入INSTALLED_APPS

这是新手最容易漏掉的关键步骤!打开项目根目录的settings.py,确保INSTALLED_APPS列表里包含你的logs应用:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # 新增这行,注册logs应用
    'logs',
]

3. 修复logs/urls.py里的正则表达式小bug

你的logs/urls.py里写了r'^$/',末尾多了个斜杠,这会导致访问/logs时匹配不到视图,最终出现404错误。改成下面这样:

from django.conf.urls import url
from . import views

urlpatterns = [
    # 去掉末尾的多余斜杠
    url(r'^$', views.index, name='index'),
]

做完以上三步,重启你的Django开发服务器,再访问http://localhost:8000/logs应该就能正常运行啦!

内容的提问来源于stack exchange,提问作者Bhulawat Ajay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:11:45