Ruby模块帮助

在下面的代码中,我可以调用
BackgroundJob.starting(job_script)
就好了。但是,例如,当我尝试拨打
JobScriptHelper.starting(RemoveBotReferralCodes)
时,我一直没有遇到方法错误。
JobScriptHelper
位于lib文件夹中,而
RemoveBotReferralCodes
位于名为script的对等文件夹中。知道发生了什么事吗?
module JobScriptHelper

  def starting(job_script)
    puts "#{Time.now.strftime('%c')}: #{job_script.name} - starting"
  end

end



require 'job_script_helper'

    class BackgroundJob < ActiveRecord::Base

      extend JobScriptHelper

    end



#!/usr/bin/env ruby
require File.expand_path('../../../config/boot',  __FILE__)
require File.join(File.expand_path('../../../config/environment', __FILE__))
require 'job_script_helper'

class RemoveBotReferralCodes
  def self.remove
    # .... 
  end
end

JobScriptHelper.starting(RemoveBotReferralCodes)
    
已邀请:
为了能够调用
JobScriptHelper.starting()
我相信你的方法定义应该是
def JobScriptHelper.starting(job_script)
  puts "#{Time.now.strftime('%c')}: #{job_script.name} - starting"
end
    

要回复问题请先登录注册