2012-11-01 19 views
1

如何在我自己的项目中使用包含程序包和区域设置目录中的区域设置目录。金字塔i18n使用两个区域设置目录

我的主要功能

settings = dict(settings) 
settings.setdefault('jinja2.i18n.domain', 'mypackage1, mypackage2') #NOT WORK!!! 

config.include("mypackage1") 
config.add_jinja2_search_path(("mypackage1:templates", 
           "mypackage2:templates")) 

config.add_translation_dirs("mypackage1:locale/", 
          "mypackage2:locale/") 
config.add_jinja2_search_path(("mypackage1:templates", 
           "mypackage2:templates")) 

return config.make_wsgi_app() 

回答

2

你可能误会了什么情况下它。引用金字塔词汇表:

表示进行翻译的“上下文”的字符串。 例如,如果 翻译域是“程序设计语言”,则翻译域可能会与“ 翻译域”为“咖啡”时的翻译域不同。翻译域由 目录中的一个或多个翻译目录 目录中的.mo文件的集合来表示。

通过将上下文设置为'mypackage1,mypackage2'之类的东西是不可能的。您需要做的是确保所有翻译目录具有相同的域,将其设置在配置中并使用多个目录调用add_translation_dirs

+0

哇它的作品,谢谢 – uralbash