當用戶選擇英語時,我需要將www.example.com/product/1網址重寫爲www.example.com/en/product/1。 (他會點擊一個選擇框來切換語言並設置一個名爲'語言'的會話)我需要在django中重寫url
我不能選擇支持此功能的django 1.4。我們建議堅持使用django 1.3。
因此我嘗試了一箇中間件,但事實證明,中間件針對每個請求運行導致無限循環。
class urlrewrite():
def process_request(self, request):
if 'i' in request.session:
if request.session.get('i','') != 0:
print "session"
request.session['i'] = request.session['i'] + 1
else:
request.session['i'] = 0
else:
request.session['i'] = 0
print "request.session['i']", request.session['i']
if request.session.get('i','') == SOME_CONSTANT and request.session.get('django_language','') == 'en':
del request.session['i']
return HttpResponseRedirect("en/"+request.META['PATH_INFO'])
Ofcourse,它does not工作。這適用於每個請求。
請幫助我。
謝謝
stackoverflow.com/questions/9923178/how-do-i-rewrite-this-url-in-django – catherine 2013-04-08 06:22:13