rails6 Controllerで使用する共通処理を作成する

rails6 Controllerで使用する共通処理を作成する

rails6で、Controller内で使用する共通処理を作成するまでの手順を記述してます。Railsのバージョンは6.1.3を使用してます。

環境

  • OS CentOS Linux release 7.9.2009 (Core)
  • Ruby 3.0.0
  • Rails 6.1.3

共通処理を作成

ActiveSupportt(コア拡張機能)のConcernを使用して、共通処理を作成します。

ここでは、例えばLDAPに接続する共通処理を作成してみます。

まずは「app/controllers/concerns」配下に「ldap_actions.rb」という名前でファイルを作成します。

このファイルに「ldap_accsess」とldapに接続するメソッドを定義します。

module LdapActions
  # ActiveSupportt(コア拡張機能)のConcernをextendします
  extend ActiveSupport::Concern

  # メソッドを定義
  def ldap_accsess
    require "net/ldap"
    @ldap = Net::LDAP.new :host => "192.168.1.1",
                          :port => 389,
                          :auth => {
                            :method => :simple,
                            :username => "cn=administrator, cn=users, dc=scj, dc=local",
                            :password => "password",
                          }

    if @ldap.bind
      logger.debug("成功")
    else
      logger.debug("失敗")
    end
  end
end

後は、使用したいControllerで呼び出して使用するだけです。

class LdapController < ApplicationController
  include LdapActions
  before_action :ldap_accsess