これは機能しますが、少し醜いように見えます。
s = :shop
s.to_s.pluralize.to_sym # => :shops
複数形にするためのより良い方法はありSymbol
ますか?
これは機能しますが、少し醜いように見えます。
s = :shop
s.to_s.pluralize.to_sym # => :shops
複数形にするためのより良い方法はありSymbol
ますか?
String
実際のテキストを表すを複数形にすることができます。Symbol
s はもう少し抽象的です。
したがって、定義上、いいえ。ただし、Symbol クラス定義を開いて以下を追加することもできます。
class Symbol
def pluralize
to_s.pluralize.to_sym
end
end
次に、次のように呼び出すことができます。
:shop.pluralize # => :shops
いいえ、そうです。
Ruby のクラスを変更することに慣れている場合は、次のように動作します。
class Symbol
def pluralize
self.to_s.pluralize.to_sym
end
end
もっと洗練された解決策をまだ見つけていませんが、もしあったとしても、おそらく上記のものに似たものを Rails が実装しているだけでしょう。