在我写urls.py
之前,我的代码......一切都很完美。现在我有问题 - 不能去我的网站。 “无法导入名称模式”
我的urls.py
是:
from django.conf.urls import patterns, include, url
他们说这里有什么错误。
答案 0 :(得分:146)
自Django 1.10起,patterns
模块已被删除(自1.8以来已被弃用)。
幸运的是,由于urlpatterns
should now be stored in a plain-old list:
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
# ... your url patterns
]
答案 1 :(得分:24)
您不需要这些导入。你在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
)
注意:此解决方案适用于Django< 1.6。这实际上是Django自己生成的代码。对于较新版本,请参阅Jacob Hume的回答。
答案 2 :(得分:20)
是:
from django.conf.urls.defaults import ... # is for django 1.3
from django.conf.urls import ... # is for django 1.4
我也遇到了这个问题。
答案 3 :(得分:5)
这是适合我的代码。我的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)),
]
答案 4 :(得分:3)
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)),
]
答案 5 :(得分:1)
我通过将我的项目从GIT直接克隆到Eclipse中来解决它,
最初,我将其克隆到文件系统上的特定位置,然后将其作为现有项目导入Eclipse。
答案 6 :(得分:0)
好像你正在使用过时的django版本.. 只需更新django并再试一次.. 以下命令将更新您的django版本..
pip install --upgrade django
答案 7 :(得分:0)
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls),
]