我在 /myapp/scripts/myscript.rb中有一个rubyscript
当我运行ruby script/myscript.rb
它执行正常,但如何在ruby脚本中使用延迟作业运行此方法?希望这有意义
--- --- myscript.rb
ENV['RAILS_ENV'] = ARGV.first || ENV['RAILS_ENV'] || 'development'
require File.expand_path(File.dirname(__FILE__) + "/../config/environment")
def populate
#do some stuff here
end
handle_asynchronously :populate
我得到未定义的方法'handle_asynchronously'错误
答案 0 :(得分:1)
我认为handle_asynchronously只适用于方法,而不适用于顶级函数。 也许你可以声明一个这样的模块:
# scripts/myscript.rb
class Tasks
def populate
puts "Populating..."
end
handle_asynchronously :populate
end
# call it in some function
def my_user_task
Tasks.new.populate
end