0

.titleizeRoRのメソッドをオーバーライドする方法はありますか?

たとえば、titleizeTJワトソンのような名前では機能しません。'tjwatson'をTjWatsonに変換します。そのようなルールを追加したいと思います。

また、私のコードはすでにメソッドを使用.titleizeしているため、新しいメソッドを定義したくありません。titleizeコード全体でメソッド呼び出しを変更せずに機能を追加するにはどうすればよいですか?

4

1 に答える 1

2

initializers次の内容の*.rbファイルをフォルダに入れます。

# encoding: utf-8

module ActiveSupport
  module Inflector
    def titleize(word)
      # old code for referencing:
      # humanize(underscore(word)).gsub(/\b(?<!['’`])[a-z]/) { $&.capitalize }
      < your code goes here >
    end
  end
end

また、このアプローチを確認してください:https ://stackoverflow.com/a/10471857/1322562 。

于 2012-07-08T13:59:52.847 に答える