如您所见,我已经在rake文件中定义了一个函数。没问题,工作正常。问题是,当我在另一个rake文件中声明def get_user_input
时。在这种情况下,函数从另一个.rake文件调用你能提出什么建议吗?感谢。
namespace :backtest do
def get_user_input
if ENV['date_from'].present? && ENV['date_until'].present?
# get input...
else
abort 'Sample usage: blah blah...'
end
end
desc "Start backtest"
task :start => :environment do
get_user_input
# rest of the code...
end
end
答案 0 :(得分:0)
你可以这样做:
require 'rake'
load 'your_rake_file_name_here.rake'
get_user_input
答案 1 :(得分:-1)
将功能移动到模块中,问题就消失了。
namespace :backtest do
Module MY
def self.get_user_input
if ENV['date_from'].present? && ENV['date_until'].present?
# get input...
else
abort 'Sample usage: blah blah...'
end
end
end
desc "Start backtest"
task :start => :environment do
My.get_user_input
# rest of the code...
end
end