8

プロジェクトの場合:

  • has_many:tasks
  • accepts_nested_attributes_for:tasks

そして私はそのようにsimple_formを使用しています(簡略化):

simple_form_for @project do |f|
  f.input :project_name
  f.simple_fields_for :tasks do |j|
    j.input :task_name
  end
  f.submit
end

ラベルを国際化するにはどうすればよい:task_nameですか?私は自分のsimple_form.it.ymlファイルで次のようなかなりの数の組み合わせを試しました。

it:
  simple_form:
    labels:
      project:
        project_name: 'Nome progetto'
        task:
          task_name:  'Nome compito'

ドキュメントで例を見つけることができませんでした。Googleは、明らかに関連性のあるいくつかの解決済みの問題を指摘しています。

https://github.com/plataformatec/simple_form/issues/48

https://github.com/plataformatec/simple_form/issues/194

しかし、これまでのところ私は途方に暮れています...

ありがとう!ジュゼッペ

4

4 に答える 4

18

フォームが多くのタスクを受け入れる限り、複数形にする必要がありますtask。simple_formで動作します:

it:
  simple_form:
    labels:
      project:
        project_name: 'Nome progetto'
        tasks:
          task_name:  'Nome compito'
于 2012-01-02T17:39:17.057 に答える
3

デフォルトのRailsi18nを使用します。

it:
  activerecord:
    attributes:
      task:
        task_name:  'Nome compito'
于 2011-10-06T13:29:04.943 に答える
3

SimpleFormはフォールバックする必要it.simple_form.labels.task.task_nameがありますが、フォールバックしません。

YAMLの「ハック」でシミュレートできます。

it:
  simple_form:
    labels:
      task: &task_labels
        task_name:  'Nome compito'
      project:
        project_name: 'Nome progetto'
        tasks:
          <<: *task_labels

行の後に、プロジェクトのタスクのラベルをカスタマイズすることもできます<<: *task_labels

于 2012-04-13T20:13:01.223 に答える
0

これが役に立ったら私はさまよいます:

activerecord.errors.models.[model_name].attributes.[attribute_name]
activerecord.errors.models.[model_name]
activerecord.errors.messages
errors.attributes.[attribute_name]
errors.messages
于 2014-07-31T20:12:13.680 に答える