1. ホーム
  2. ruby-on-rails

lib/tasksにある私のカスタムrakeタスクがRails 3で検出されないのはなぜですか?

2023-07-15 05:50:42

質問

ビルドインの rake タスクは問題なく動作しますが、Project/lib/tasks/payments.rb にある私の新しいカスタムタスクは読み込まれません。

namespace :payments  do
  desc "Tally payments at the end of the month"
  task :compute => :environment do
    BillingPeriod.compute_new_period
  end
end

$ rake payments:compute
(in /Users/rob/Code/Apps/skyfarm)
rake aborted!
Don't know how to build task 'payments:compute'

application.rbというファイルを読み込むと正常に動作します。

require 'lib/tasks/payments.rb'

...が、他のものを壊してしまう。

$ rails s
./lib/tasks/payments.rb:1: undefined method `namespace' for main:Object (NoMethodError)

どのように解決するのですか?

ファイルの拡張子を .rb から .rake .