0

私はRoRのユーザーです。

公式ドキュメントから、activerecord に関する翻訳ファイルの定義方法が理解できました。

サンプルはユーザーモードについてです。

en:
  activerecord:
    models:
      user: Dude
    attributes:
      user:
        login: "Handle"

このように属性の意味を取得します。「ログイン」→「ハンドル」

User.human_attribute_name("login")

今、私はモデルの属性名を知りたいです。「ハンドル」→「ログイン」

どうすれば入手できますか?

4

2 に答える 2

2

そのような機能を持つ I18n のメソッドは見当たりませんでしたが、必要に応じて非常に厄介なことを行うことができます。

kv = I18n::Backend::KeyValue.new({})
flat = kv.flatten_translations(:en, I18n.config.backend.send(:translations), false, nil)
flat.find {|key, value| value == "Handle"}

これは出力する必要がありますen.activerecord.attributes.user.login

于 2013-11-10T18:55:53.013 に答える