Rails:挂钩进入ORM生成器

时间:2012-02-09 16:25:28

标签: ruby-on-rails gem generator

每当调用模型生成器时,我都想从gem运行生成器。

以下

require 'rails'

module Mygenerator
  class Railtie < Rails::Railtie

    config.app_generators.orm :my_generator

  end
end 

正确调用我的生成器,但Rails的本机生成器不再运行。

我假设我可以通过invoke运行本机生成器,但这似乎过于复杂。那么ORM的所有其他生成器呢?

有没有更好的方法将我的生成器“附加”到现有的生成器?


更新

这自然有效 - 但我仍然希望有更清洁的东西:

module Rails
  module Generators
    class ModelGenerator < NamedBase

      def run_my_custom_generator
        invoke "my_generator:foo"
      end

    end
  end
end

1 个答案:

答案 0 :(得分:0)

这样的事情

require 'rails'

class Rails::Generators::ModelGenerator
  include Mygenerator::full_namespace_here::class
  extend  Mygenerator::full_namespace_here::ClassMethods
end