require 'rails' module Admin module Generators class InstallGenerator < Rails::Generators::Base desc "rails g scaffold x, auto scaffold style." def concerns_initializer_file filePath = File.expand_path(File.dirname(File.dirname(__FILE__))) currPath = File.expand_path("../../", filePath) gemsPath = File.expand_path("../", currPath) jbuilderRails = "#{gemsPath}/jbuilder-2.6.0/lib/generators/rails" jbuilderRailsBak = "#{gemsPath}/jbuilder-2.6.0/lib/generators/rails_bak" railtiesErbTemplates = "#{gemsPath}/railties-5.0.0/lib/rails/generators/erb/scaffold/templates" railtiesErbTemplatesBak = "#{gemsPath}/railties-5.0.0/lib/rails/generators/erb/scaffold/templates_bak" railtiesScaffoldController = "#{gemsPath}/railties-5.0.0/lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb" railtiesScaffoldControllerBak = "#{gemsPath}/railties-5.0.0/lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb.bak" currJbuilderRails = "#{currPath}/concerns/jbuilder/lib/generators/rails" currRailtiesErbTemplates = "#{currPath}/concerns/railties/lib/rails/generators/erb/scaffold/templates" currRailtiesScaffoldController = "#{currPath}/concerns/railties/lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb" unless File.exist?(jbuilderRailsBak) && File.exist?(railtiesScaffoldControllerBak) FileUtils.mv jbuilderRails, jbuilderRailsBak FileUtils.cp_r currJbuilderRails, jbuilderRails FileUtils.mv railtiesScaffoldController, railtiesScaffoldControllerBak FileUtils.cp_r currRailtiesScaffoldController, railtiesScaffoldController puts "controller helper 重构成功!!!!!!!" else puts "!!!错误:controller helper 重构失败,备份文件已经存在,请先恢复或删除后重试" end unless File.exist?(railtiesErbTemplatesBak) FileUtils.mv railtiesErbTemplates, railtiesErbTemplatesBak FileUtils.cp_r currRailtiesErbTemplates, railtiesErbTemplates puts "views 模板重构成功!!!!!!!" else puts "!!!错误:views 模板重构失败,备份文件已经存在,请先恢复或删除后重试" end end end end end