目次

モデルの設置場所

MVCでアプリケーションを作成する場合に、モデルを記述したファイルをどこに設置するかについて。

1.コントローラと同じディレクトリへ設置する

小さなアプリケーションや、複数のコントローラから共有しないモデルの場合は、この方法が有効です。
モデルを利用するコントローラが明確になるほか、手続き(procedure)に関する部分と情報(data)に関する部分が一つのディレクトリにまとまるので、メンテナンス性が格段にあがります。

 $ ls -1
 main.rb
 model_htdigest.rb
 v_form.rhtml
 v_index.rhtml

requreする場合に、./をつけて読み込み位置を指定します。

  # in main.rb
  require "./model_htdigest"
  ...

2.モデル専用のディレクトリを作成する

大規模アプリケーションで、複数のコントローラから共有するモデルが多い場合は、この方法が有効です。

以下のようにal_config.rbへ登録して、モデルディレクトリをRubyに認識させます。

  # al_config.rb
  ...
  AL_MODEL_DIR = "/PATH/TO/MODELS/"
  $LOAD_PATH << AL_MODEL_DIR

この場合は、通常通り require できます。

  # in main.rb
  require "model_htdigest"
  ...