2012-02-09 10 views
7

モデルジェネレータが呼び出されるたびにジェネレータをジェネレータから実行したいと思います。Rails:ORMジェネレータへのフック

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 

答えて

0

方法については、この

require 'rails' 

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

おかげのようなものについて提案 - 私の文脈でこれがうまくいくかどうかがわかります。 – polarblau

関連する問題