在django 1.10中,如果不推荐使用模式,我该如何处理我的网址?

时间:2016-11-10 19:56:26

标签: django django-urls

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

urlpatterns = patterns('',
    url(r"^$", home),
    url(r"^storefront/", storefront),
    url(r"^sell/", get_entry),

ImportError: cannot import name patterns

上面是我的urls.py片段,正在修改这个只是更改我的import语句的问题,或者我现在需要重写我的整个urls.py,因为模块模块已经被弃用了?

1 个答案:

答案 0 :(得分:2)

在django 1.10中,网址可以通过以下方式定义: -

from django.conf.urls import include, url
from django.conf.urls.i18n import i18n_patterns

urlpatterns = i18n_patterns(
    url("^admin/", include(admin.site.urls)),
)

if settings.USE_MODELTRANSLATION:
    urlpatterns += [
        url('^i18n/$', set_language, name='set_language'),
    ]

urlpatterns += [
    url("^", include("your_app.urls")),
]

所以你不必改变你的所有网址。只是正确放置,即如果你正在使用I18N将它们与admin放在urlpatterns = i18n_patterns其他部分的其他部分,如上例所示,用your_app.urls替换名称。