2012-06-11 7 views
7

मैं Django 1.4 के नए i18n_patterns उपयोग कर रहा हूँ:Django के नए i18n_patterns का उपयोग करना: सेटिंग्स मॉड्यूल में निर्दिष्ट डिफ़ॉल्ट भाषा पर वापस कैसे आना है?

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

from django.contrib import admin 
admin.autodiscover() 

urlpatterns += i18n_patterns('', 
    url(r'^admin/', include(admin.site.urls)), 
) 

यह हर सक्रिय भाषा के लिए काम करता है:

/en/admin/ # Ok 
/es/admin/ # Ok 

लेकिन यह विफल रहता है:

/admin/ # 404 Not found 

404 से बचने के लिए कैसे त्रुटि और अनुरोधित यूआरएल के एक भाषा-पूर्वनिर्धारित संस्करण पर रीडायरेक्ट (न केवल व्यवस्थापक पैनल)?

एक कस्टम मिडलवेयर समाधान लिखना है? Django में डिफ़ॉल्ट रूप से यह क्यों नहीं आता है?

उत्तर

11

ऐसा लगता है कि आपने enable django.middleware.locale.LocaleMiddleware नहीं किया था।

+2

ओह ... मेरा बुरा! मुझे लगता है कि दस्तावेज़ों को इसे थोड़ा और स्पष्ट करने की आवश्यकता है। हालांकि पूरे अनुवाद अनुभाग को पढ़ने के बाद यह स्पष्ट हो जाता है कि अनुवाद पर सबकुछ के लिए 'django.middleware.locale.LocaleMiddleware' की बहुत आवश्यकता है। धन्यवाद! –

+0

उत्तर अभी भी Django 1.9 पर लागू होता है। – jjmontes

संबंधित मुद्दे