带有视图的 Rails3 本地化?

Posted

技术标签:

【中文标题】带有视图的 Rails3 本地化?【英文标题】:Rails3 localization with views? 【发布时间】:2011-04-18 20:15:54 【问题描述】:

在 rails3 中没有找到任何关于本地化视图的信息。我需要什么才能获得像

这样的视图
index.en.html.erb
index.de.html.erb

工作?如何设置路线?

谢谢!

【问题讨论】:

一般情况下,只有文本发生变化,并被提取到 yml 文件中。如果更多应该改变,为每个视图创建单独的部分呢? 在我阅读的 Rails 指南中,有一种方法可以为每种语言使用自定义视图。那个怎么样?我还需要什么?谢谢 你绝对是对的,我忽略了这一点。该指南本身并不真正推荐它:如果您更改视图,则必须在任何地方传播修改。让它工作似乎很自动:一旦你设置了你的语言环境,就会加载正确的视图。所以这样设置你的语言环境:edgeguides.rubyonrails.org/… 【参考方案1】:

您自己在config/application.rb 文件中的设置将提供默认区域设置(如果未设置,则为en,因此index.en.html.erb 视图现在已经可以工作)。

您唯一需要做的就是为您的用户提供一些机制来选择/更改他们的语言环境,或者是用户触发的手动操作,例如。您页面上的链接,允许他们更改语言或更自动的东西,例如。用户个人资料/会话中的语言偏好或类似内容。

无论哪种方式,我都强烈建议使用子域 - 设置简单,设置后保持不变,并且允许用户将自己的语言链接发送给其他人,而无需执行任何特殊操作。

Check the Rails Guides,详细了解如何执行此操作。

【讨论】:

以上是关于带有视图的 Rails3 本地化?的主要内容,如果未能解决你的问题,请参考以下文章

带有 Residemenu 的 UILocalNotification

在 Rails 3 中将 UTC 转换为本地时间

Swift 本地推送通知操作视图

如何正确使用带有本地标识符的获取资产?

在 web 视图中播放应用本地视频 (.mp4)

Rails 3,显示来自 RAILS_ROOT 上方本地文件系统的 jpg 图像