Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用django 1.4的url区域设置_Django_Localization - Fatal编程技术网

使用django 1.4的url区域设置

使用django 1.4的url区域设置,django,localization,Django,Localization,我正在尝试应用django URL语言环境,如下所述 下面是我的设置文件 LANGUAGE_CODE = 'en' gettext = lambda s: s LANGUAGES = ( ('ar', gettext('Arabic')), ('en', gettext('English')), ) 我的url.py如下所示 from django.conf.urls import patterns, include, url from django.conf impor

我正在尝试应用django URL语言环境,如下所述

下面是我的设置文件

LANGUAGE_CODE = 'en'

gettext = lambda s: s

LANGUAGES = (
    ('ar', gettext('Arabic')),
    ('en', gettext('English')),
)
我的url.py如下所示

from django.conf.urls import patterns, include, url
from django.conf import settings
from django.contrib import admin
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.conf.urls.i18n import i18n_patterns



admin.autodiscover()


urlpatterns = patterns('',
    url(r'^sitemap\.xml$', 'sitemap.view', name='sitemap_xml'),
)

urlpatterns += i18n_patterns('',

    url(r'^', include('bon_app.apps.bonz.urls')),

    url(r'^', include('bon_app.apps.pages.urls')),

)
它目前只适用于英语,当我尝试127.0.0.1/en/时,它可以工作,但当我尝试127.0.0.1//ar/时,它不知道为什么会发生这种情况

我目前正在使用django 1.4

更新

bon_app/apps/bonz/url.py

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


urlpatterns = patterns('bon_app.apps.bonz.views',

    url(r'^$',              'home',                               name='bonz-home'),
    url(r'^promotion/$',    'home',  {'model'   : 'Promotion'},   name='bonz-promo'),
    url(r'^event/$',        'home',  {'model'   : 'Event'},       name='bonz-event'),
    url(r'^directory/$',    'directory',                          name='bonz-directory')
)
bon_app/apps/pages/url.py

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


urlpatterns = patterns('bon_app.apps.pages.views',

    url(r'^contact-us/$', 'contact_us', name='pages-contactus'),
    url(r'^about-us/$', 'about_us', name='pages-aboutus'),

)
你说:

它目前只适用于英语,当我尝试127.0.0.1/en/时,它可以工作,但当我尝试127.0.0.1//ar/时,它不知道为什么会发生这种情况

在这里,在“ar”之前有一个双斜杠“/”,而不是一个斜杠“/”

也许这已经是问题所在了?

你说:

它目前只适用于英语,当我尝试127.0.0.1/en/时,它可以工作,但当我尝试127.0.0.1//ar/时,它不知道为什么会发生这种情况

在这里,在“ar”之前有一个双斜杠“/”,而不是一个斜杠“/”


也许这已经是问题所在了?

您必须将LocaleMiddleware添加到您的中间件类中

您必须将LocaleMiddleware添加到您的中间件类中

您可以显示bonz.url和pages.url中的代码吗?您好,我刚刚用bonz.urls和pages.urlsd中的代码更新了这个问题。你有没有将LocaleMiddleware添加到你的中间件类中?谢谢Anna,这就是我错过的中间件。请将其作为答案发布,以便我可以为您分配奖励点数。您能展示一下bonz.url和pages.url中的代码吗?你好,Jingo,我刚刚用bonz.url和pages.urlsd中的代码更新了这个问题。您的中间件类中是否添加了LocaleMiddleware?谢谢Anna,这是我错过的中间件。请把它作为一个答案贴出来,这样我就可以给你分配赏金点数了。好吧,请不要投反对票,这只是一个想法,我试着帮你。。。我认为这个主意很好,因为有时候这么小的打字错误会造成不同,我发现了;)好的,请不要投反对票,这只是一个想法,我试图帮助。。。我认为这个主意很好,因为有时候这么小的打字错误会造成不同,我发现了;)