Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 多语言RubyonRails应用程序_Ruby On Rails_Multilingual - Fatal编程技术网

Ruby on rails 多语言RubyonRails应用程序

Ruby on rails 多语言RubyonRails应用程序,ruby-on-rails,multilingual,Ruby On Rails,Multilingual,我想在我的rails应用程序中对消息/闪烁等提供希腊语支持。我快速查看了I18n框架,但对于如此简单的东西,似乎有很多配置。我觉得应该有一个非常简单的方法来做这样的事情,但(显然)我不知道。如果有人愿意帮助我,我会很高兴的。谢谢。 以下是国际化很难实现的一些原因 首先,可能显示给用户的每一段文本都是潜在的翻译候选。这不仅意味着组件的属性(如菜单项和按钮标签),还意味着通过笔划绘制调用绘制的文本,以及嵌入在像素图像中的文本(如取自MIT EECS网页的文本)。翻译可以很容易地改变文本的大小或纵横比

我想在我的rails应用程序中对消息/闪烁等提供希腊语支持。我快速查看了I18n框架,但对于如此简单的东西,似乎有很多配置。我觉得应该有一个非常简单的方法来做这样的事情,但(显然)我不知道。如果有人愿意帮助我,我会很高兴的。谢谢。

以下是国际化很难实现的一些原因

首先,可能显示给用户的每一段文本都是潜在的翻译候选。这不仅意味着组件的属性(如菜单项和按钮标签),还意味着通过笔划绘制调用绘制的文本,以及嵌入在像素图像中的文本(如取自MIT EECS网页的文本)。翻译可以很容易地改变文本的大小或纵横比;例如,德语标签往往比英语标签长得多

当然,还需要翻译错误消息——这也是不在错误消息中公开内部系统名称的另一个原因。英语阅读用户可能能够理解FileNotFoundException的含义,但它无法很好地国际化

我不认识鲁比,所以我帮不了你更多。

以下是国际化很难实现的一些原因

首先,可能显示给用户的每一段文本都是潜在的翻译候选。这不仅意味着组件的属性(如菜单项和按钮标签),还意味着通过笔划绘制调用绘制的文本,以及嵌入在像素图像中的文本(如取自MIT EECS网页的文本)。翻译可以很容易地改变文本的大小或纵横比;例如,德语标签往往比英语标签长得多

当然,还需要翻译错误消息——这也是不在错误消息中公开内部系统名称的另一个原因。英语阅读用户可能能够理解FileNotFoundException的含义,但它无法很好地国际化


我不懂Ruby,所以我不能帮你更多。

Rails有约定,所以你不需要配置

在config/locales/el.yml中创建一个包含以下内容的文件:

el:
  flash_messages:
    success: "επιτυχία"
    fail: "αποτυγχάνουν"
然后在控制器中:

flash[:notice] = t('flash_messages.success')
您将在视图中获得已翻译的字符串

您可以按如下方式更改区域设置:

I18n.locale = :el

我不知道怎么会更容易。“Rails I18n指南”:包含了所有血淋淋的细节,如果您想与约定抗争或超越简单的限制。

Rails有约定,因此您无需进行配置

在config/locales/el.yml中创建一个包含以下内容的文件:

el:
  flash_messages:
    success: "επιτυχία"
    fail: "αποτυγχάνουν"
然后在控制器中:

flash[:notice] = t('flash_messages.success')
您将在视图中获得已翻译的字符串

您可以按如下方式更改区域设置:

I18n.locale = :el

我不知道怎么会更容易。“Rails I18n指南”:提供了所有血淋淋的细节,如果你想与传统抗争或超越简单的限制。

你应该选择Django;)(有点长,但很有趣,用一种极客的方式)你应该和Django一起去;)(有点长,但很有趣,用一种极客的方式)