ImportError: cannot import name 'patterns'

執行導入操做django

from django.conf.urls import patterns, include, url

出現以下報錯:ide

ImportError: cannot import name 'patterns'

緣由是實際使用的新版Django已經移除patterns,經百度後將原代碼url

from django.conf.urls import patterns, include, url
from django.contrib import admin

urlpatterns = patterns('',
    # Examples:
    #  url(r'^$', 'superlists.views.home', name='home'),
    #  url(r'^blog/', include('blog.urls')),
     url(r'^admin/', include(admin.site.urls)), )

修改成:code

from django.conf.urls import include, url
from django.contrib import admin

urlpatterns = ['',
    # Examples:
    url(r'^$', 'lists.views.home', name='home'),
    # url(r'^blog/', include('blog.urls')),
    # url(r'^admin/', include(admin.site.urls))
]

執行出現以下報錯blog

TypeError: view must be a callable or a list/tuple in the case of include().

修改代碼爲:element

from django.conf.urls import include, url
from django.contrib import admin

urlpatterns = ['',
    # Examples:
    url(r'^$', include('lists.views.home_page'), name='home'),
    # url(r'^blog/', include('blog.urls')),
    # url(r'^admin/', include(admin.site.urls))

再執行出現以下報錯rem

ModuleNotFoundError: No module named 'lists.views.home_page'; 'lists.views' is not a package

導入lists目錄下views中的home_page,並做以下修改string

from django.conf.urls import include, url
from django.contrib import admin
from lists.views import home_page

urlpatterns = ['',
    # Examples:
    url(r'^$', home_page, name='home'),
    # url(r'^blog/', include('blog.urls')),
    # url(r'^admin/', include(admin.site.urls))
]

再執行出現以下報錯it

Creating test database for alias 'default'...
SystemCheckError: System check identified some issues:

ERRORS:
?: (urls.E004) Your URL pattern '' is invalid. Ensure that urlpatterns is a list of url() instances.
        HINT: Try removing the string ''. The list of urlpatterns should not have a prefix string as the first element.

System check identified 1 issue (0 silenced).

這是由於在urlpatterns中多寫了 [ ‘’,] 致使的,去除[ '' ]後在執行便運行正常test

相關文章
相關標籤/搜索