1

我正在尝试编写一个 Ruby gem(使用 Rails 3.2.13),我创建了一个生成器来进行文件复制。

以下是我的生成器代码

#<mygemname>/lib/generators/mygemname/mygemname_generator.rb

require 'rails/generators'
require 'rails/generators/migration'

module Mygemname
  module Generators
    class ConfigGenerator < Rails::Generators::Base
      p "testing generator"
    end 
  end
end

然后我去我的测试应用程序<mygemname>/spec/dummy(我使用 Rspec 进行测试),所以从我的虚拟应用程序,当我运行

rails g I get 

Mygemname:
  mygemname:config

但是当我跑步时rails g endless:config,我得到

Could not find generator endless:config.

但是当我运行时rails g endless,我得到了正确的结果。但是我想将命令设置为rails g endless:config,我该怎么做?

4

1 回答 1

4

尝试重命名文件:/lib/generators/mygemname/config_generator.rb

并且结构config_generator.rb有点不同:

class Mygemname
  class ConfigGenerator < Rails::Generators::Base
    p "testing generator"
  end 
end
于 2013-03-20T14:41:21.507 回答