28

ビューでのみ使用される定数がありますが、さまざまな場所でさまざまな方法で使用されています。これはオプション名の配列で、選択ボックスに使用されますが、他のビューでもこれを使用して、この配列に文字列が見つかったかどうかを確認し、それに応じて応答します。

DRYを維持するためにこれを処理する最良の方法は何ですか?

最初にヘルパーで定数を作成しましたが、ビューではアクセスできないようです。

それ以来、ヘルパーでメソッドを作成することに切り替えました。これは、定数を返す以外は何もしません。ただし、これは Rails の精神に反しているように思えます。基本的には小文字の定数を使用しているためです。

もちろん、モデルに貼り付けることもできますが、実際にはどのモデルとも関係ありません。

4

2 に答える 2

42

ヘルパーで定数を定義できますが、ビューでは完全修飾名で定数を参照する必要があります。

application_helper.rb

module ApplicationHelper
  MyConstant = "something"
end

任意のビューで:

<%= ApplicationHelper::MyConstant %>
于 2010-02-16T00:50:12.187 に答える