<;模块';myblog.url';从';路径\\to\\python\\file\\url.py'&燃气轮机';不是可调用路径或点表示法路径

<;模块';myblog.url';从';路径\\to\\python\\file\\url.py'&燃气轮机';不是可调用路径或点表示法路径,python,django,Python,Django,我在一个名为urls.py的文件中有这段代码 from django.conf.urls import url from django.contrib import admin from myblog import urls urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'', urls), ] 我试图重定向到名为myblog的模块中的另一个文件,该模块包含另一个名为URL.py的文件,代码如下: from dj

我在一个名为urls.py的文件中有这段代码

from django.conf.urls import url
from django.contrib import admin
from myblog import urls

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'', urls),
]
我试图重定向到名为myblog的模块中的另一个文件,该模块包含另一个名为URL.py的文件,代码如下:

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

urlpatterns = [
    url(r'^$', views.post_list, name='post_list'),
]
包含post_列表方法的“我的视图”文件如下所示:

from django.shortcuts import render

def post_list(request):
    return render(request,'myblog/post_list.html', {})
结果是我不断收到以下错误消息:

“path\to\python\file\urls.py”中的模块“myblog.urls”不是可调用的路径或点符号路径

谁能给我解释一下我哪里弄错了。我是django和python新手,我正在使用DjangoGirls.com上的教程。他们使用Django 1.8,我已经安装了Django 1.9。

您需要将URL.py链接到它们

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'', include(urls, namespace='MyOtherapp')),
]
注意:我还在这里添加了一个名称空间,这不是必需的,它只是在您使用
url
模板标记时有所帮助。

您需要使用url.py链接它们

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'', include(urls, namespace='MyOtherapp')),
]
注意:我在这里还添加了一个名称空间,它不是必需的,只是在您使用
url
模板标记时有所帮助。

查看,uou可以看到您忘记使用
include

首先,您必须添加导入

from django.conf.urls import include, url
然后将url模式更改为:

url(r'', include('blog.urls')),
请注意使用的模块名称是否正确-您有
myblog
,但本教程有
blog

查看,uou可以看到您忘记使用
include

首先,您必须添加导入

from django.conf.urls import include, url
然后将url模式更改为:

url(r'', include('blog.urls')),

请注意使用的模块名称是否正确-您有
myblog
,但本教程有
blog

如果您遵循本教程,我现在不会使用名称空间,以后使用url标记时可能会造成混乱。@Alasdair-同意,因此我没有详细说明:)但是当我使用include时,我收到另一条错误消息,该消息说“包含”不可用defined@Tatenda-是的,您需要从django.conf导入它
。url导入包含
如果您遵循教程,我现在不会使用名称空间,以后使用url标记时可能会造成混淆。@Alasdair-同意,所以我没有详细说明:)但是当我使用include时,我得到另一条错误消息,它说include不是defined@Tatenda-是的,您需要从django.conf导入
。url导入include
include
中使用字符串是可以的,它使用字符串作为视图(例如
url(r'blog',myblog.view_posts'),
)这是不赞成的。仍然使用字符串作为include。好的,当然,(我已经完成了删除所有字符串的过程,所以我忘记了哪些是实际警告…)include给了我一句谚语include is not definedIt听起来好像你错过了include的导入。我把它添加到了上面的答案中。在
include
中使用字符串是可以的,它使用字符串作为视图(例如
url(r'blog',myblog.view_posts'),
),这是不推荐的。仍然使用字符串作为include。好的,当然,(我已经完成了删除所有字符串的过程,所以我忘记了哪些是实际警告…)include给了我一句谚语include is not definedIt听起来好像你错过了include的导入。我把它添加到上面的答案中。