私はレールの初心者です。アプリケーションでビューの 1 つを作成しているときに、大きなチャンク (~100 行) の見苦しいコードになってしまいます。ほとんどの場合、ビュー固有の定数ハッシュに対する条件付きルックアップで構成されているため、一般的ではありません。この見苦しいコードの塊をビュー ファイルから削除したいと考えています。
このコードを配置するのに最適な場所はどこでしょうか? 具体的には、ヘルパー モジュールはそのような非汎用コードに適切な場所に配置されていますか?
私はレールの初心者です。アプリケーションでビューの 1 つを作成しているときに、大きなチャンク (~100 行) の見苦しいコードになってしまいます。ほとんどの場合、ビュー固有の定数ハッシュに対する条件付きルックアップで構成されているため、一般的ではありません。この見苦しいコードの塊をビュー ファイルから削除したいと考えています。
このコードを配置するのに最適な場所はどこでしょうか? 具体的には、ヘルパー モジュールはそのような非汎用コードに適切な場所に配置されていますか?
コードをに配置すると、レイアウト app/helpers/application_helper.rb
でレンダリングされた任意のビューからアクセスできるようになります。application
別のオプションは、特定のビューまたはコントローラーに必ずしも関連付けられていないカスタムヘルパー モジュールを定義し (以下にリンクしたビデオを参照)、include
その機能を持たせたいビュー/コントローラーのモジュール内にそれを定義することです。
ヘルパー モジュールは実際にそれらを呼び出す場所にありますが、メソッドの宣言方法に注意してください。ヘルパー モジュールで定義できるものには制限があります。
これは、2011 年 5 月のヘルパー モジュールの概要をまとめた優れた記事です。
カスタムヘルパー モジュールの概要を示す RailsCast を次に示します(つまり、特定のコントローラーまたはビューに必ずしも関連付けられていないモジュールのようにカスタム)。短く、甘く、そして要点。