Я пытаюсь создать драгоценный камень с генератором для направляющих 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
но ничто не помогло. Я также нашел вполне немного в Интернете, но не, если показал то, в чем я нуждался.