ruby-on-rails - EmberJS 中的 I18n(路由和一般)

标签 ruby-on-rails internationalization routing ember.js ember-router

EmberJS 是否支持国际化应用程序的翻译路由?或者它是否至少可以轻松扩展它以支持 i18n 路由?有人有这方面的经验吗?

例如。可以从语言环境文件以某种方式动态设置路由字符串吗?当使用 Ember 和 Rails 路由时也很酷,不必指定两次......是吗?

我是 Ember 的新手(目前正在评估 js 框架),但我认为一般来说,使用 Rails 可以简单地从 Rails 中指定非常基本的路由,而在 Ember 中指定其余的路由?所以不会有太多重复?想知道 Rails 的语言环境文件是否可用于查找路由翻译。

作为一个更普遍的问题:Ember 是否已经支持 I18n?

最佳答案

您可以通过重新打开 Ember.Route 并在初始化时设置本地化路由来实现国际化路由,请参阅此处的示例 http://jsfiddle.net/pangratz666/wQXvb/

您必须确保在初始化路由器之前定义了 Ember.STRINGS。字符串查找本身可以通过 loc 方法完成,如 sly7_7 所述。

Ember.STRINGS = {
    '/all': '/alle',
    '/home/:id': '/zuhause/:id'
};

Ember.Route.reopen({
    init: function() {
        this._super();
        var route = this.get('route');
        if (route) this.set('route', route.loc());
    }
});

关于ruby-on-rails - EmberJS 中的 I18n(路由和一般),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11080435/

相关文章:

internationalization - 如果翻译不可用,Cakephp i18n 如何以默认语言获取内容

python - django-registration:由于密码字符无效,中国用户无法注册

c# - 找不到静态图像的 Controller 路径? asp.net mvc 路由问题?

ruby-on-rails - 你如何让 Rails 使用 mysql 中的 LONGBLOB 列?

html - 为什么高度为: auto not provide content area large enough to fit my content?

sql - 如何在 create_table 上设置初始 id 值?

zend-framework - Zend Framework - 路由 - 除了对现有 Controller 的请求之外,所有请求都发送到一个 Controller

mysql - 如何在 Rails3 的 Active Record 中按日期和年份分组

javascript - jqGrid国际化

ruby-on-rails-3 - 无法在 Rails 3.2 + Rspec 2.13 下测试引擎路线