我的Rails应用程序中有一个这样的模块。我的app文件夹中有一个文件夹附加功能。在里面,我有一个模块。
module ExcelUpload
class Eupload
def do_something
end
end
def self.excel_upload
upload_service = Eupload.new
upload_service.do_something
end
end
如何从命令提示符执行上述模块。我想像rake任务一样执行。 例如 - bundle exec rake db:migrate
这有什么命令吗?
答案 0 :(得分:0)
模块名称应该是保存.rb文件的文件夹的camel大小写名称。这里应该是module Extras
而不是module ExcelUpload
建议您将该模块放在应用程序目录结构的\lib
文件夹中。从那里,您可以从控制台
Extras::Eupload.excel_upload
答案 1 :(得分:0)
您可以创建一个新的Rakefile
并将其添加到下面,然后您可以从任何地方访问rails:
APP_PATH = File.expand_path('../../config/application', __FILE__)
require File.expand_path('../../config/boot', __FILE__)
require APP_PATH
# set Rails.env here if desired
Rails.application.require_environment!
答案 2 :(得分:0)
在里面创建一个rake文件your_task.rake
,/lib/tasks
在your_task.rake
内:
namespace :your_task_name do
desc "Description About your task"
task :task_name => :environment do
# Write all your task here
end
end
现在从终端运行此任务:
rake your_task_name:task_name
这很简单。 :)