Создание Ruby on Rails 3 драгоценных камня с генератором (включая пространство имен)

Я пытаюсь создать драгоценный камень с генератором для направляющих 3 (бета 4). Я следовал этим инструкциям, и но я не мог получить его выполнение. Проблема состоит в том, что, когда я определяю модуль в файле генератора, генератор перечислен с 'направляющими, генерируют', но не может быть выполнен, потому что генератор не найден.

Из инструкций (не работает с 'направляющими, генерируют my_gem:install'):

module MyGem
  class InstallGenerator < Rails::Generators::Base
    source_root File.expand_path("../templates", __FILE__)

    # all public methods in here will be run in order
    def add_my_initializer
      template "initializer.rb", "config/initializers/my_gem_initializer.rb"
    end
  end
end

Измененный (работы с 'направляющими генерируют установку):

class InstallGenerator < Rails::Generators::Base
  source_root File.expand_path("../templates", __FILE__)

  # all public methods in here will be run in order
  def add_my_initializer
    template "initializer.rb", "config/initializers/my_gem_initializer.rb"
  end
end

Однако я хочу иметь пространства имен для генератора, например, company:gem_name:generator, для которого я должен использовать подход модуля (я думаю). Мое предположение - то, что это имеет некоторое отношение к поиску и структуре каталогов, но я не мог выяснить как. Я попробовал несколько подходов:

lib
-generators
--my_gem.rb

lib
-generators
--company
---my_gem.rb

lib
-generators
--company
---my_gem_name
----my_gem.rb

но ничто не помогло. Я также нашел вполне немного в Интернете, но не, если показал то, в чем я нуждался.

17
задан hjuskewycz 22 June 2010 в 09:37
поделиться