MVCでアプリケーションを作成する場合に、モデルを記述したファイルをどこに設置するかについて。
小さなアプリケーションや、複数のコントローラから共有しないモデルの場合は、この方法が有効です。
モデルを利用するコントローラが明確になるほか、手続き(procedure)に関する部分と情報(data)に関する部分が一つのディレクトリにまとまるので、メンテナンス性が格段にあがります。
$ ls -1 main.rb model_htdigest.rb v_form.rhtml v_index.rhtml
requreする場合に、./をつけて読み込み位置を指定します。
# in main.rb require "./model_htdigest" ...
大規模アプリケーションで、複数のコントローラから共有するモデルが多い場合は、この方法が有効です。
以下のように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" ...