【備忘録】Rails taskの設定方法

【備忘録】Rails taskの設定方法 未分類
Pocket

Railsアプリ作成にてtaskによるコマンド入力だけでコントローラーのアクションを動かしたかったが、調べてもなかなか該当記事がなく、ようやくできたので備忘録として残しておきます。

 

使用ファイル【lib > tasks > scrape.rake】

 

namespace : scrape do
 desc “scraping and save”
 task article_save :: environment do
  logger = Logger.new”log/recover_user_life.log”
  ArticlesController.new.create
 end
end
1行目 namespace : タスクファイル名 do
2行目 desc “このタスクの説明(ただの説明なので日本語でも良い)”
3行目 task このタスク名 :: environment do
4行目 logger = Logger.new”log/recover_user_life.log” エラーした時にログを残すために記述。
5行目 ArticlesController.new articleコントローラーを動かす。
    .create createアクションを動かす。

 

これでターミナルから rails ファイル名:タスク名 とコマンドを打てばコントローラーが動かせます。(上記だと rails scrape:article_save)
フォームを使わず、自動でスクレイピングさせて直接createアクションを動かしたかった場合に使えました。

コメント

タイトルとURLをコピーしました