无法导入名称模式

Aut*_*led 71 python django

在我写信之前urls.py,我的代码......一切都很完美.现在我有问题 - 不能去我的网站."无法导入名称模式"

urls.py是:

from django.conf.urls import patterns, include, url
Run Code Online (Sandbox Code Playgroud)

他们说这里有什么错误.

Jac*_*ume 151

从Django 1.10开始,该patterns模块已被删除(自1.8以来已被弃用).

幸运的是,它应该是一个简单的编辑,以删除有问题的代码,因为urlpatterns 现在应该存储在一个普通的列表中:

urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    # ... your url patterns
]
Run Code Online (Sandbox Code Playgroud)

  • 有关Django 1.8中此更改的更好文档和基本原理,请参阅https://docs.djangoproject.com/en/1.10/releases/1.8/#django-conf-urls-patterns (3认同)

jul*_*ria 26

你不需要那些进口.你在urls.py(开始)中唯一需要的是:

from django.conf.urls.defaults import *

# This two if you want to enable the Django Admin: (recommended)
from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    url(r'^admin/', include(admin.site.urls)),
    # ... your url patterns
)
Run Code Online (Sandbox Code Playgroud)

注意:此解决方案适用于Django <1.6.这实际上是Django自己生成的代码.对于较新版本,请参阅Jacob Hume的回答.

  • 每当你'进口*`一只小猫死了 (43认同)
  • import*被认为是一种不好的做法 (36认同)
  • 来自django.conf.urls.defaults import*已从djnago1.6中删除 (2认同)

spi*_*ang 20

是:

from django.conf.urls.defaults import ... # is for django 1.3
from django.conf.urls  import ...         # is for django 1.4
Run Code Online (Sandbox Code Playgroud)

我也遇到了这个问题.


Yat*_*ngh 10

模块模块不受支持..我使用过这个.

from django.conf.urls import *
from django.contrib import admin
admin.autodiscover()

urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    # ... your url patterns
]
Run Code Online (Sandbox Code Playgroud)


Kri*_* PC 6

这是适合我的代码.我的django版本是1.10.4决赛

from django.conf.urls import url, include

from django.contrib import admin
admin.autodiscover()

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

    url(r'^admin/', include(admin.site.urls)),
]
Run Code Online (Sandbox Code Playgroud)