LoginSignup
34
33

More than 5 years have passed since last update.

Rails4でのController,Modelが呼び出すモジュールのロード

Last updated at Posted at 2013-09-16

Rails4のController,Modelが呼び出すモジュールのロードに関するメモです。

Rails3まではプロジェクト内のlibディレクトリ内等にモジュールを設置し、config/application.rbファイル内にそのモジュール設置先PATH以下のファイルを自動でロードする設定をしていました。
Rails4からは、app/controllers, app/modelディレクトリにconcernsというディレクトリが存在します。コントローラやモデルで利用するモジュールはここに設置するようになったようです。これらのディレクトリは自動で読み込まれるようです。但し、絶対にconcernsディレクトリを使用する必要はないようで、従来通りのやり方でもいけました。

動作確認環境

サンプルコード

モジュール定義
app/controllers/concerns/hogemodule.rb
module Hoge
  def hoge_module_method
    処理内容
  end
end
モジュールの読み込み(以下はコントローラクラスの例)
/app/controllers/test_controller.rb
class TestController < ApplicationController
  ### モジュールの読み込み
  require 'hogemodule'
  include Hoge
  
  def index
  
  ### indexメソッド内でHogeモジュールの「hoge_module_method」メソッドを呼び出す
  hoge_module_method
  
  end
  
end

参考

Rails4でのController,Modleのモジュールの使い方

34
33
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
34
33