如何在RTL YAML文件中为Ruby on Rails传递变量?

问题描述 投票:0回答:1

我有一个en.yml文件段是这样的。

email_subject: "A user has referred %{community}"

在ar. yml(阿拉伯语)中,我用谷歌翻译把这段翻译成这样。

email_subject: "المستخدم المشار%{community}المجتمع"

(翻译可能有误,抱歉我不懂阿拉伯语)

在使用从左到右的语言(尤其是Ruby on Rails)的yaml文件时,我的问题如下。

  1. "email_subject: "部分应该和en.yml(LTR)一样,对吗?

  2. 对于""里面的阿拉伯文,应该用LTR还是RTL?

  3. 对于 %{社区} 变量,应该是LTR还是RTL(换句话说,应该是 yyyy}tinummoc{%xxx ?

  4. 如何插入 %{社区} 在Sublime Text或类似的文本编辑器中键入阿拉伯语文本时,在其中输入一个变量?

ruby-on-rails ruby yaml translation right-to-left
1个回答
1
投票

让我们假设你的yml文件看起来像这样。

 ar:
  models:
    email_subject: "المستخدم المشار%{community}المجتمع"

然后你将在翻译中插入社区变量,就像这样。

I18n.t('models.email_subject', community: 'عربي')

你不应该关心社区变量是RTL还是LTR,因为就I18n而言是为给定的语言提供适当的翻译,所以渲染方向应该在你的前端css代码中根据用户选择的语言来处理。

另外注意,你应该在你的翻译中的变量周围添加空格,因为I18n不会像这样为你添加。

email_subject: "المستخدم المشار %{community} المجتمع"
© www.soinside.com 2019 - 2024. All rights reserved.