2015年5月30日土曜日

rails4でbatchを作成する

  • 公開日:2015年05月30日
  • 最終更新日:2015年05月31日

環境

  • rails(ruby2.2.2, rails4.2.1)アプリ

バッチ処理をrailsで作成しました。以下にやり方を記載します。

batchフォルダの作成

batchフォルダをlibフォルダ配下に作成します。
batchファイルは全てこのlib/batch/*配下に作成することになります。


// プロジェクトルートに遷移
cd {prohject_root}

mkdir -p lib/batch

touch lib/batch/summary.rb

ここではsummary.rbというバッチファイルを作成しました。

libフォルダを読み込む設定

config/application.rbファイルにlibフォルダ以下を読み込めるように設定します。


require File.expand_path('../boot', __FILE__)

require 'rails/all'

# Require the gems listed in Gemfile, including any gems
# you've limited to :test, :development, or :production.
Bundler.require(*Rails.groups)

module Yamachennnel
  class Application < Rails::Application

    # batch path
    config.autoload_paths += %W(#{config.root}/lib)
  end
end

これでbatchフォルダ以下のファイルを読み込めるようになりました。

summary.rbを記述

作成したsummary.rbにバッチ処理を記述します。


# coding: utf-8
class Batch::Summary
  def self.execute
    "Hello world"
  end

end

上記の処理を実行します。


// プロジェクトルートに遷移
cd {prohject_root}

bundle exec rails runner Batch::Summary.execute

上記のコマンドでexecuteメソッドを呼び出すことができます。もちろんActiveRecoedも利用できます。
はRspecを使ったテストコードの記載方法を説明したいと思います。
今回は以上です。

参考サイト

この記事がお役にたちましたらシェアをお願いします

このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...