首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >链接的Jinja2翻译

链接的Jinja2翻译
EN

Stack Overflow用户
提问于 2012-03-23 15:56:10
回答 2查看 752关注 0票数 5

在Jinja2模板中,这是我想要的呈现行(英文):

代码语言:javascript
运行
复制
This is the <a href="roadmap.html">roadmap</a>

翻译成荷兰语的结果应该是:

代码语言:javascript
运行
复制
Dit is de <a href="roadmap.html">planning</a>

这条Jinja2线路把我带到了那里-几乎-

代码语言:javascript
运行
复制
{{ _('This is the %(roadmap)s.', roadmap='<a href="roadmap.html">roadmap</a>'|safe) }}

不幸的是,“路线图”这个词没有被翻译。

Jinja2实现这一目标的方式是什么?在roadmap1和roadmap2中拆分链接?我希望能有更聪明的东西。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-23 18:36:57

这些应该是有效的:

代码语言:javascript
运行
复制
{{ _('This is the') }} <a href="roadmap.html">{{ _('roadmap') }}</a>

{{ _('This is the %(roadmap)s', roadmap=('<a href="roadmap.html">%s</a>' % _('roadmap'))|safe) }} 

此外,如果您使用webapp2,则可能需要将href="roadmap.html“替换为例如href="{{ uri_for('roadmap') }}"

票数 1
EN

Stack Overflow用户

发布于 2018-06-27 07:11:07

这里有一个解决方案,可以让你在一个可翻译的字符串中得到所有的东西。您通常不希望链接文本(“路线图”)成为单独的翻译项目。

它的工作原理是将开始和结束标记提取到变量中。它们必须标记为safe,因为它们包含否则将被转义的HTML内容。

代码语言:javascript
运行
复制
{% trans link_start='<a href="roadmap.html">'|safe, link_end='</a>'|safe %}
This is the {{ link_start }} roadmap {{ link_end }}.
{% endtrans %}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9835727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档