Rails Rails ActiveRecord 模块化 Model 国际化问题

u1351384616 · October 01, 2015 · Last by u1351384616 replied at October 02, 2015 · 2203 hits

可以正常国际化的代码

zh-CN.yml
zh-CN:
  activerecord:
    attributes:
      user:
        name: "名字"

class User < ActiveRecord::Base
end

下面是不能正常国际化的代码

zh-CN.yml
zh-CN:
  activerecord:
    attributes:
      system:
        user:
          name: "名字"

class System::User < ActiveRecord::Base
end

类似 System::User 的 model, 在 zh-CN.yml 文件中应该怎么写?

spree 里的例子:

en:
  activerecord:
    attributes:
      spree/address:

命名空间用 / 表示,你的例子就是:

zh-CN:
  activerecord:
    attributes:
      system/user:
        name: "名字"

楼上的是正解!

如果还不清楚,可以看 active record 源码。

You need to Sign in before reply, if you don't have an account, please Sign up first.