Если вы просто хотите использовать свой собственный шаблон контроллера, вы можете просто поместить его в lib/templates/rails/scaffold_controller/controller.rb
Если вы хотите заменить, например, сам код scaffold_controller_generator
, чтобы платформа контроллера генерировала дополнительные файлы классов. Вы можете создать lib/generators/rails/my_scaffold_controller/my_scaffold_controller_generator.rb
с шаблонами в lib/generators/rails/my_scaffold_controller/templates
.
Не забудьте указать рельсы на вашем новом scaffold_controller в config/application.rb
:
config.generators do |g|
g.scaffold_controller = "my_scaffold_controller"
end
Для my_scaffold_controller_generator.rb
вы можете скопировать из гема railties в railties-3.x.x/lib/rails/generators/rails/scaffold_controller
, если хотите изменить поведение по умолчанию, или наследовать его, если вы просто хотите добавить функциональность:
require 'rails/generators/rails/scaffold_controller/scaffold_controller_generator'
module Rails
module Generators
class MyScaffoldControllerGenerator < ScaffoldControllerGenerator
source_root File.expand_path("../templates", __FILE__)
def new_funtionality
end
end
end
end