如何连接Django 1.8和django-localeurl

时间:2015-07-06 20:57:59

标签: python django translation django-localeurl

我使用Django 1.8,然后我django-localurl == 2.0.2。

我在base.html模板中加载了localurl标记{% load localeurl_tags %},但收到错误:

TemplateSyntaxError at /

'localeurl_tags' is not a valid tag library: ImportError raised loading localeurl.templatetags.localeurl_tags: cannot import name Token

我该如何解决?

我的settings.py

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'localeurl.middleware.LocaleURLMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'django.middleware.security.SecurityMiddleware',
)

我的网址:

urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'website.views.home', name='home'),
    # url(r'^blog/', include('blog.urls')),
    (r'^i18n/', include('django.conf.urls.i18n')),
    url(r'', include("www.urls", namespace="www")),
    url(r'^blog/', include("blog.urls", namespace="blog")),
    url(r'^admin/', include(admin.site.urls)),
    url(r'^ckeditor/', include('ckeditor.urls')),
    (r'^localeurl/', include('localeurl.urls')),
)

是的,我在Instated apps中有'localeurl'

1 个答案:

答案 0 :(得分:0)

似乎不再维护localeurl,因为(来自here):

  

注意:django-localeurl目前尚未维护(因此不会审查或合并拉取请求),并且在Django本身(https://docs.djangoproject.com/en/1.8/topics/i18n/translation/#module-django.conf.urls.i18n)中引入了区域设置感知的URL模式已经废弃了它的方法

所以我看看内置方式,因为错误信息(进一步阅读时)似乎表明django.templates中的Token类不再存在(可能在1.8或其他东西中取出)。 / p>

您是否按照说明here

进行操作
  1. 您是否已将'localeurl.middleware.LocaleURLMiddleware'添加到中间件?

  2. 您是否已将'localeurl'添加到已安装的应用中?