Class: ZenAdmin::Generators::InstallGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Includes:
ActiveRecord::Generators::Migration
Defined in:
lib/generators/zen_admin/install/install_generator.rb

Instance Method Summary collapse

Instance Method Details

#add_routesObject



35
36
37
# File 'lib/generators/zen_admin/install/install_generator.rb', line 35

def add_routes
  route 'mount ZenAdmin::Engine => "/admin"'
end

#copy_initializerObject



11
12
13
# File 'lib/generators/zen_admin/install/install_generator.rb', line 11

def copy_initializer
  template "zen_admin.rb", "config/initializers/zen_admin.rb"
end

#copy_localesObject



25
26
27
# File 'lib/generators/zen_admin/install/install_generator.rb', line 25

def copy_locales
  template "zh-CN.yml", "config/locales/zen_admin.zh-CN.yml"
end

#copy_migrationsObject



15
16
17
18
19
# File 'lib/generators/zen_admin/install/install_generator.rb', line 15

def copy_migrations
  migration_template "create_zen_admin_assets.rb.erb", "db/migrate/create_zen_admin_assets.rb"
  migration_template "create_zen_admin_audit_logs.rb.erb", "db/migrate/create_zen_admin_audit_logs.rb"
  migration_template "create_zen_admin_trash_items.rb.erb", "db/migrate/create_zen_admin_trash_items.rb"
end

#copy_modelsObject



21
22
23
# File 'lib/generators/zen_admin/install/install_generator.rb', line 21

def copy_models
  template "asset.rb", "app/models/zen_admin/asset.rb"
end

#install_dependenciesObject



29
30
31
32
33
# File 'lib/generators/zen_admin/install/install_generator.rb', line 29

def install_dependencies
  say "正在安装 Action Text 和 Active Storage 依赖...", :yellow
  rails_command "action_text:install"
  # 注意: action_text:install 也会顺带安装 active_storage:install
end

#show_readmeObject



39
40
41
42
43
44
45
46
47
# File 'lib/generators/zen_admin/install/install_generator.rb', line 39

def show_readme
  say "\nZenAdmin 基础配置安装成功!", :green
  say "你可以通过 config/initializers/zen_admin.rb 修改默认账号密码。", :yellow
  say "接下来请运行: ", :yellow
  say "  bin/rails db:migrate", :white
  say "直接访问 /admin 使用硬编码方式登录。", :white
  say "\n如果你需要基于数据库的角色权限管理,请运行:", :yellow
  say "  bin/rails g zen_admin:rbac_install", :white
end