从数据库flaskbab转换字符串

2024-06-01 01:45:58 发布

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

我用烧瓶巴别塔来翻译琴弦。在

在一些模板中,我从数据库(postgresql)读取字符串。 如何使用Flask Babel从数据库中翻译字符串?在


Tags: 字符串模板数据库flask烧瓶postgresqlbabel巴别
2条回答

我建议在数据库里有一个工程文本。 在你的HTML文件中(或者最好是你可以在任何地方都包含的HTML),你有一个包含翻译的脚本:

<script>
  translations = { 'WillBringOwnFood': {{ _('Guest will bring their own food')}},
                   'WantToShareBathroom': {{ _('Guest would like to share bathroom with stranger')}}  };
</script>

现在,当您收到工程字符串时,只需在translations字典中进行查找。 所以.js文件看起来像这样:

^{pr2}$

然后你可以像往常一样使用巴别塔来提取你的琴弦。 所有的翻译都在同一个.po/mo文件中。在

不可能在数据库翻译中使用Babel,因为数据库内容是动态的,而Babel翻译是静态的(它们没有改变)。在

如果从数据库中读取字符串,则必须将翻译保存在数据库中。您可以创建一个转换表,类似于(locale,source,destination),并通过查询获得翻译后的值。在

相关问题 更多 >