金字塔,由pag设置i18n

2024-09-30 10:41:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我有多种语言的网页。。。像这样:

  • /—>;en、us、pt、es,默认值为us
  • /foo->;pt,en,默认值为pt
  • /条->;pt,默认为pt

在数据库上我有:

    |--URL--|-Languages-|-defLang- 
    |  foo  |   pt,us   |    pt  
    |  bar  |    pt     |    pt  

__init__.py上,我将其设置为:

^{pr2}$

但那不管用,只有家里才管用

如果我遗漏了任何信息,请提醒我。 谢谢


Tags: pygtpt数据库url网页fooes
2条回答
def add_localizer(event):
    request = event.request
    languages = ('en','us','es')
    deflang = 'pt'
    # CHECK current page
    if 'page' in request.matchdict:
        currentpage = DBSession.query(Pages).filter_by(url=request.matchdict['page']).first()
        #SET pages languages
        languages = currentpage.Languages.split(',')
        deflang = currentpage.defLang
    #  -  CHANGED              
    dln = default_locale_negotiator(request)
    if not dln or dln not in languages:
        #set the default language 
        request._LOCALE_ = deflang
    localizer = get_localizer(request)
    request.lang = localizer.locale_name
    def auto_translate(string):
        return localizer.translate(self.tsf(string))
    request.localizer = localizer
    request.translate = auto_translate

谢谢

在我看来,你在搜索request.matchdict中的'entity',而实际上你应该搜索'page',给出你的路线'/{page}'。在

相关问题 更多 >

    热门问题