3

私の Rails 3.2 アプリapplication.rbでは、不要な scaffold ジェネレーターを無効にする次の行があります。

module MyApp
  class Application < Rails::Application

    # rest of the config...

    config.generators do |g|
      g.helper false
      g.stylesheets false
      g.javascripts false
    end
  end
end

アプリはDraper gemrails generateを使用しており、実行するdecoratorと、使用可能なジェネレーターの 1 つとしてリストされます。g.decorator false上記のリストに追加するとrails generate scaffold SomeModel、デコレータ ファイルが生成されなくなると思いましたが、まだ作成されています。何が欠けているのか教えてもらえますか?

4

1 に答える 1

4

Draper は、すべてのコントローラーに対してデフォルトでデコレーターをビルドするように構成されています。application.rb ファイルに 1 行追加することで、デフォルト設定を変更できます...

module MyApp
  class Application < Rails::Application

    # rest of the config...

    config.generators do |g|
      g.helper false
      g.stylesheets false
      g.javascripts false
      g.decorator   false
    end
  end
end

これがドレーパーからの興味深いビットです...

https://github.com/drapergem/draper/blob/master/lib/generators/controller_override.rb

レイルタイから呼び出された…

https://github.com/drapergem/draper/blob/master/lib/draper/railtie.rb

デコレータを明示的に生成できることに注意してください...

$ rails generate decorator foo
于 2014-01-09T18:24:45.267 に答える