【问题标题】:NameError-- name 'logs' is not defined. Django-PythonNameError--未定义名称“日志”。 Django-Python
【发布时间】:2018-09-15 16:16:20
【问题描述】:
from django.conf.urls import include, url
from django.contrib import admin

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

我已经在 main/urls.py 文件中编写了这段代码

logs/urls.py 中的代码如下:-

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

urlpatterns = [
    url(r'^$/', views.index, name='index'),
]

我正在访问http://localhost:8000/logs

错误:- NameError 名称“日志”未定义

【问题讨论】:

    标签: python django python-3.x django-views django-2.0


    【解决方案1】:

    您需要先导入您实际引用的模块,然后再将其添加到您的 URL 文件中。

    假设 logs 在您的导入路径中:

    import logs
    

    【讨论】:

      【解决方案2】:

      通常您会使用带有include 的字符串,这样您就不必导入模块;

      url(r'^logs/', include('logs.urls')
      

      此外,您应该从索引视图的正则表达式末尾删除斜杠。美元标记字符串的结尾,所以r'^$/' 永远不会匹配。

      url(r'^$', views.index, name='index'),
      

      【讨论】:

        【解决方案3】:

        请查看docs。应该有帮助!

        include() 函数接受url()path()re_path() 的列表/元组并将它们包含到 django 路由系统中。

        它还需要应用程序的名称:您可以在include(("enter here your app's name", app.urls)) 中定义它 或者在应用程序本身中,在模块化级别的 urls.py 中。 app_name = 'enter here your apps'name '

        但只有include() 是不够的,您必须在path() 或用于路由的smth 中定义它(例如re_path()url()在 django 2.0 中已弃用 ))

        完整详情:include() 函数。

        所以,应用程序网址的完整指向如下:

         from django.conf.urls import url, include
         from . import views
         from . import app
        
           urlpatterns = [
             url(r'^', include(("app", app.urls)), name='index'),
           ]
        

        如果你使用 Django 2.0,我建议你使用 path()re_path() >


        我注意到你使用的正则表达式有点不正确

        url(r'^$/', views.index, name='index'),

        你在/之前输入$是不正确的,$表示表达式的结尾,必须在表达式的结尾。


        很遗憾,我无法在帖子中告诉您所有详细信息。你应该阅读 Django 文档。通过django tutorial 开始。

        我相信它会有所帮助!

        【讨论】:

          猜你喜欢
          • 2019-01-29
          • 2022-10-16
          • 2021-04-20
          • 2013-01-26
          • 1970-01-01
          • 2018-07-14
          • 2017-12-25
          • 2021-07-17
          相关资源
          最近更新 更多