首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >翻译地区符号4小枝模板

翻译地区符号4小枝模板
EN

Stack Overflow用户
提问于 2018-10-28 10:28:07
回答 2查看 3.3K关注 0票数 1

我有一个关于小枝模板翻译的问题。

这是一种实际的翻译方式。

代码语言:javascript
复制
{% trans into 'en_EN' %}Hello{% endtrans %}!,

我可以直接从这样的数据库加载“”值吗?(这将返回错误)。

代码语言:javascript
复制
{% trans into {{ app.user.lang }} %}Hello{% endtrans %}!,

还是我应该用控制器来做呢?

我现在使用以下函数来翻译:

代码语言:javascript
复制
{% with %}
{% set lang = app.user.lang %}
<button class="btn btn-outline-primary" type="button" data-toggle="dropdown">{% trans into lang %}Hello{% endtrans %}!, {{ app.user.username }}<i class="material-icons">arrow_drop_down</i></button>
{% endwith %}

但我不确定这是不是个好练习。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-10-28 12:43:56

您不需要使用into,如果您想要根据用户的首选项进行翻译,您可以通过侦听器添加它,或者在URL中包含区域设置,那么在您的小枝模板中所要做的就是{{ 'Hello' | trans }}

请参阅:https://symfony.com/doc/current/translation/locale.html

票数 2
EN

Stack Overflow用户

发布于 2018-10-28 10:45:37

我想你的问题也不是很清楚。通常,您可以在配置文件中定义默认语言,然后使用语言选择器或其他方法更改它们。

那你就不用那个into了。

Symfony 4 How to change language Step by Step

这里是一个很好的例子,如何构建一个语言开关和一些教程。你应该阅读文档以进行翻译,其中大部分内容都得到了解释。

https://symfony.com/doc/current/translation.html

当您真正想要将您的翻译存储到您的数据库时,您必须使用翻译加载器并对它们进行扩展,因此您必须注册一个新服务并从数据库加载您的翻译。

Symfony2 Database Translation Loader isn't executed

但我不知道这是不是你的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53030489

复制
相关文章

相似问题

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