Haklısın unuttum onu göstermeyi. Bunun için
custom template tag yarattım. Bunu göstermek için urls.py'deki yaptığımı daha detaylı göstermem lazım, önemli şeyleri kırmızı yaptım.
Her url tipine bir key eşleştirdim :
urls.py
i18nurls = {
'leaveelanding' :
{
'fr':r'^fr/produit/logiciel-conges-absences-planning\.html$',
'tr':r'^tr/urun/izin-takip-programi\.html$',
'en':r'^en/product/online-leave-management-software\.html$',
'func':'nereowebsite.products.views.productLeaveeView'
},
'leaveefeatures' :
{
'fr':r'^fr/produit/nereo-conges-fonctionnalites\.html$',
'tr':r'^tr/urun/nereo-izin-ozellikler\.html$',
'en':r'^en/product/nereo-leave-management-features\.html$',
'func':'nereowebsite.products.views.productLeaveeFeaturesView'
},
'leaveedetails' :
{
'fr':r'^fr/produit/nereo-conges-absences-planning\.html$',
'tr':r'^tr/urun/nereo-izin-avantajlar\.html$',
'en':r'^en/product/nereo-leave-management-advantages\.html$',
'func':'nereowebsite.products.views.productLeaveeDetailView'
},
...
}
for urlKey in i18nurls:
bItem = i18nurls[urlKey]
urlpatterns += patterns('',
(bItem['fr'], bItem['func'], {'lang':'fr'}),
(bItem['tr'], bItem['func'], {'lang':'tr'}),
(bItem['en'], bItem['func'], {'lang':'en'}),
)
sonra custom template tag'i belirliyorsun:
urlengine.py
from django.template import Library
from django.utils.translation import to_locale, get_language
import urls
register = Library()
@register.simple_tag
def getUrl(urlId):
langName = to_locale(get_language())[:2]
if not urls.i18nurls.has_key(urlId):
return "/"
bItem = urls.i18nurls[urlId]
if not bItem.has_key(langName):
langName = 'fr'
if not bItem.has_key(langName):
return "/"
retStr = "/"+bItem[langName][1:-1]
retStr = retStr.replace('\.', '.')
return retStr
sonra bunu template'lerinde kullanabiliyorsun :
mytemplate.html
{% load urlengine %}
...
<tr>
<td><div class="headMenuItem"><a href="{% getUrl "leaveelanding" %}">{% trans "Vue d'ensemble" %}</a></div></td>
<td><div class="headMenuItem"><a href="{% getUrl "leaveefeatures" %}">{% trans "Fonctionnalités" %}</a></div></td>
<td><div class="headMenuItem"><a href="{% getUrl "leaveedetails" %}">{% trans "Atouts" %}</a></div></td>
<td><div class="headMenuItem"><a href="{% getUrl "leaveeprice" %}">{% trans "Tarifs" %}</a></div></td>
<td><div class="headMenuItem"><a href="{% getUrl "leaveeclients" %}">{% trans "Clients" %}</a></div></td>
</tr>
...