0

を使用してモデルとリソースを生成しようとしています

rails g model AreaOfLaw name

これによりarea_of_lawsが複数形として作成されますが、area_of_lawが必要です。Railsの命名規則を上書きするにはどうすればよいですか?で提案されているように /config/initializers/inflections.rb に以下を追加しました:

ActiveSupport::Inflector.inflections do |inflect|
  inflect.irregular 'area of law', 'areas of law'
end

Rails コンソールでは機能しますが、ジェネレーターを実行している場合、このカスタムの変化は機能しません。

"area of law".pluralize
=> "areas of law"

ジェネレーターでこれを機能させるにはどうすればよいですか?

4

1 に答える 1

3

もしあなたがそうするなら

inflect.irregular 'area_of_law', 'areas_of_law'

それは動作します:

'AreaOfLaw'.tableize
# => "areas_of_law"

LawAreaただし、代わりにモデルに名前を付けたほうがよい場合があります。

于 2013-03-11T21:26:40.643 に答える