2014-02-05 43 views
0

我知道如何创建一个轨道发电机的宝石被称为像:如何创建命令行导轨生成器gem?

rails g my_generator command 

而且我知道如何创建一个托尔宝石,可以这样调用:

my_generator command 

但我不知道如何创建可以使用可执行文件调用的轨道生成器。我已经通过创建像一个lib/my_generator/cli.rb文件的尝试:

require 'thor' 

module Mang 
    class Cli < Thor 
    include ::Rails::Generators::Base 

    desc "install_gem", "install a gem" 
    def install_gem 
     gem 'thor', "0.18.1" 
    end 

    end 
end 

,但我得到了下面的错误,尽管有增加的Rails在我gemspec的依赖。

uninitialized constant Rails (NameError) 

回答

0

该修复只是包含rails/generators/actions模块的问题。

require 'thor' 
require 'rails/generators' 
require 'rails/generators/actions' 

module Mang 
    class Cli < Thor 
    include Thor::Actions 
    include Rails::Generators::Actions 

    desc "install_gem", "install a gem" 
    def install_gem 
     gem 'thor', "0.18.1" 
    end 

    end 
end