无法导入名称模式

在我写在urls.py之前,我的代码…一切工作完美。 现在我有问题 – 不能去我的网站。 “无法导入名称模式”

我的urls.py是:

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

他们说这里有什么错误。

你不需要这些import。 你需要在你的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 ) 

注:此解决scheme是为Django <1.6。 这实际上是由Django本身生成的代码。 对于较新的版本,请参阅Jacob Hume的答案。

从Django 1.10开始, patterns模块已经被删除(从1.8开始已经被弃用了)。

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

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

是:

 from django.conf.urls.defaults import ... # is for django 1.3 from django.conf.urls import ... # is for django 1.4 

我也遇到过这个问题。

模式模块不支持..我的工作与此。

 from django.conf.urls import * from django.contrib import admin admin.autodiscover() urlpatterns = [ url(r'^admin/', include(admin.site.urls)), # ... your url patterns ] 

这是为我工作的代码。 我的django版本是1.10.4 final

 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)), ] 

模式模块在django 1.8中不可用。 所以你需要从你的导入中删除模式,并做类似于以下内容:

 from django.conf.urls import include, url from django.contrib import admin admin.autodiscover() urlpatterns = [ # here we are not using pattern module like in previous django versions url(r'^admin/', include(admin.site.urls)), ] 

我通过从GIT直接克隆我的项目到Eclipse来解决它,

最初,我是在文件系统上的特定位置克隆它,然后将其作为现有项目导入到Eclipse中。