翻訳ファイルに翻訳された属性とモデル名が定義されていますが、Modelname.human_attribute_name(...)は正しく翻訳された属性名を返します。エラーメッセージは変換されません。 エラーメッセージの属性名が変換されるために必要なものは何ですか?件名にGuideからRailsエラーメッセージ(Rails 2.3.2、I18N)で翻訳された属性
答えて
、あなたのモデル名で正しくローカライズファイルを設定する必要があり、属性名になります。
en:
activerecord:
models:
user: Dude
attributes:
user:
login: "Handle"
これはYAMLであるので、すべてのあなたの「タブ」が実際にあることを確認してください2つのソフトスペース。その後、User.human_name
とUser.human_attribute_name(:login)
でそれらを得ることができます。
私は福音のためにそれを取っていませんでした - バグがあったかもしれません。私はそれをテストし、それは正常に動作します。私はtitle
という属性を持つModel
というモデルを作った。
<h1>New <%= Model.human_name %></h1>
<% form_for(@model) do |f| %>
<%= f.error_messages %>
<%= Model.human_attribute_name("title") %><br />
<%= f.text_field :title %>
<%= f.error_message_on :title %>
...
し、適切に翻訳された出力のスクリーンショット:
fr:
activerecord:
models:
model: "Sumfink"
attributes:
model:
title: "Tiltile"
ここでは、関連するビューコードです:イアンへhttp://screencast.com/t/et5FhVe1Gp
詳細な回答ありがとうございました。私は新しいプロジェクトでそれを試しました。私は既存のプロジェクトの翻訳ファイルを使用し、新しいモデルを追加して翻訳をテストし、翻訳はすぐに機能しました。 文字列が翻訳に使用されていない元の翻訳ファイルにアクセスできません。なぜなら、それは私の職場にあるからです。私は何が違うかを見るために月曜日にそれを見るでしょう。翻訳に成功したアプリケーションはLinux上で動作していたため、Windows上で動作していました。 –
翻訳ファイルが正しいです。ビューのエラーメッセージに表示されないので、列名の "_id"部分を省略しました。私は "model_id"の代わりに "model"を使用しました。 –
スクリーンショットへのリンクが壊れています。あなたが供給できる別のものがありますか?ありがとうございます – mkelley33
賞賛だけで、ここconfig/locales
の私fr.yml
ファイルの抜粋ですこれを追加して、検証に失敗した場合にラベルを強調表示するには、次のように記述する必要があります。
は、同じようにそれを書く:
<%= f.label "title" %><br />
して翻訳を表示しません。
どのバージョンのRailsを使用していますか?このラベルのバグは2.3.6で修正されました:https://rails.lighthouseapp.com/projects/8994/tickets/745-form-label-should-use-i18n – giraff
- 1. Railsはネストされた属性の検証エラーメッセージを翻訳します。i18n
- 2. のRails 3のI18n label_tag翻訳
- 3. Ruby on Rails i18n - モデル内のカスタムメッセージを翻訳したい
- 4. Rails 3.1はモデル属性名を翻訳します
- 5. Railsの翻訳カスタムベースエラー
- 6. Rails i18n APIのYaml翻訳ファイルの複数形の例
- 7. Rails I18nネストされたトランスレーションキー
- 8. symfony、sfDoctrineGuardPluginと翻訳(I18N/I10N)
- 9. Rails 4 i18n、ロケールでサブドメインを使用するルートの翻訳方法
- 10. Rails 3、モデルメソッド/計算された属性
- 11. Rails 3ネストされた属性?
- 12. 保護された属性のユニットテストRails
- 13. ckeditor gem with railsネストされた属性
- 14. Rails:ネストされた属性とモデル?
- 15. Railsのネストされた属性:validates_uniqueness_ofは
- 16. Rails I18nは、翻訳のいくつかの部分のみを返します。
- 17. Rails I18n、翻訳が存在するかどうかを確認しますか?
- 18. Rails admin:フィールド名の翻訳方法
- 19. ActiveRecordエラーメッセージ:フィールドの翻訳
- 20. Rails 2.3.2とSHOW TABLES
- 21. Rails 2.3.2 + mysql2 + MySQL 5.5
- 22. NoMethodError in Rails 2.3.2 app
- 23. rails:どのi18n翻訳キーがまだ使用されているかを記録する方法は?
- 24. Rails i18n:翻訳に問題があり、ロケールが定義されていません
- 25. Railsの属性
- 26. マイクロソフト翻訳APIで翻訳されたテストの限界
- 27. 翻訳ストリングのi18n概念マッピング
- 28. Cakephp i18n翻訳ロケールを取得する
- 29. Scalaテンプレートから翻訳されたi18nメッセージにアクセスする(Play!Internationalization)
- 30. Rails collection_selectカスタムネーム属性
私にも同様の問題があります。しかし、私のアプリ翻訳では、モデル名のために動作しません。おそらくRailsコードのバグは何でしょうか。ただし、属性名は正しく変換されます。 –