1

翻訳は私の最大の敵のようです:(私は素敵なFormtasticフォームとyaml翻訳ファイルを持っています。私は次のconfig/application.rbように翻訳を設定しました:

config.i18n.available_locales = :nl
config.i18n.default_locale = :nl

そして、次のようなbefore_filterメソッドapplication_controller.rb

before_filter :set_locale

def set_locale
  session[:locale] = params[:locale] unless params[:locale].nil?
  I18n.locale = session[:locale] || I18n.default_locale
end

私のフォームは次のようになります(hamlで書かれています):

= semantic_form_for Ad.new do |f|       
  .holder
    = f.inputs do
      = f.input :name

    = f.inputs do
      = f.input :reason

そして最後に私のnl.ymlは次のようになります:

nl:
  formtastic:
    titles:
      ads:
        reason: "Waarom verkoop je het?"
    labels:
      ads:
        reason: "Waarom verkoop je het?"
    hints:
      ads:
        reason: "Waarom verkoop je het?"
    placeholders:
      ads:
        reason: "Waarom verkoop je het?"

ご覧のとおり、Formtasticが提供するこれらすべてのキーに同じ翻訳を追加しましたが、何も表示されず、ラベルは残りReason、プレースホルダーテキストはありません。私が知る限り、Formtasticのreadmeで規定されていることを正確に実行しました。私はレール(3.2.8)でformtastic(2.2.1)を使用しています。activerecordの翻訳をラベルに追加するとnl.yml、ラベルは翻訳されます。なぜ形式的な翻訳が機能しないのですか?

4

2 に答える 2

1

これは少し足りないですが、問題は一部にあることが判明しましたads。複数形にするべきではありませんでしadた。これは正常に機能します。

nl:
  formtastic:
    titles:
      ad: // Mind the difference here: no 's'
        reason: "Waarom verkoop je het?"
    labels:
      ad:
        reason: "Waarom verkoop je het?"
    hints:
      ad:
        reason: "Waarom verkoop je het?"
    placeholders:
      ad:
        reason: "Waarom verkoop je het?"
于 2012-09-21T06:51:15.203 に答える
1

よくわかりませんが、次のようなことを試しましたか。

nl:
  formtastic:
    ads:
      reason: "Waarom verkoop je het?"
...

モデルクラスはここではAdであり、i18nはモデル構造を何らかの形で反映する必要があるためですか?

于 2012-09-20T22:44:54.983 に答える