我在rails.i工作想要在searcht1中调用类“twitter”的函数(show),它位于rake任务的同一目录下的“lib”中。
lib/task/search.rake:
require_relative "lib/Searcht1"
namespace :Searcht do
task :search => :environment do
obj=Twitter.new
obj.show
end
end
并且“searcht1.rb”中的类就像这样
class Twitter
def show
"anylogic"
end
end
但它没有调用该函数。我没有得到任何结果。 非常感谢任何帮助
答案 0 :(得分:0)
我知道这个问题有点过时,但我在rails5应用程序中遇到了问题,这就是我保持任务干净的方法:)
请在 lib / task s =>中创建一个 searchdir 子目录 lib / tasks / searchdir 并将您引用的文件 searcht1.rb 放在那里。 现在您可以在rake文件中引用它。
请记住:它是从引用的文件中运行的。
# in lib/tasks/search.rake
namespace :Searcht do
task :search => :environment do
require_relative "searchdir/searcht1"
end
end
让你的代码在这里运行:
# in lib/tasks/searchdir/searcht1.rb
class Twitter
def show
"anylogic"
end
end
obj=Twitter.new
obj.show