Gitlab EE Module Prepend Flow
gitlab 现在使用ApplicationController.prepend_mod
加载ee模块
在运行初始化时加载ee模块的代码: config/initializers/0_inject_enterprise_edition_module.rb
ee目录下有单独的子目录:
ee/app/controllers/foos_controller.rb
ee/app/finders/foos_finder.rb
ee/app/helpers/foos_helper.rb
ee/app/mailers/foos_mailer.rb
ee/app/models/foo.rb
ee/app/policies/foo_policy.rb
ee/app/serializers/foo_entity.rb
ee/app/serializers/foo_serializer.rb
ee/app/services/foo/create_service.rb
ee/app/validators/foo_attr_validator.rb
ee/app/workers/foo_worker.rb
ee/app/views/foo.html.haml
ee/app/views/foo/_bar.html.haml

对应的controller
、model
、view
代码都可以复写
db文件夹下有ee专属的数据库migration
改动
Q:Geo模块的作用?
这种方式能起作用是因为它在ce版本的eager-load/auto-load
路径中有配置,可以在config/application.rb.

留下评论