从命令提示符运行Rails模块

时间:2013-12-10 05:08:22

标签: ruby-on-rails ruby module ruby-on-rails-3.2 command-prompt

我的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

这有什么命令吗?

3 个答案:

答案 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

这很简单。 :)