设计分布在引擎上的几个模型

Ner*_*rve 9 ruby-on-rails rails-engines devise ruby-on-rails-3

我有一个rails应用程序,包括几个一次组合安装的引擎.应用程序的B2B端有一个引擎,我们有一个单独的"用户"模型(像公司一样)进行设计验证.同样,最终客户也有一个拥有自己的身份验证模型(例如:公司的用户).同样,还有另一个站点管理员引擎,它使用ActiveAdmin实现根级别管理.

我们可以在几种组合中同时安装一个,两个或三个引擎.问题是,我们每个都有不同的父应用程序控制器,每个都有不同的路由器.就像是:

devise.rb - engine1

config.router_name = :engine1
config.parent_controller = 'Engine1::ApplicationController'
Run Code Online (Sandbox Code Playgroud)

devise.rb - engine2

config.router_name = :engine2
config.parent_controller = 'Engine2::ApplicationController'
Run Code Online (Sandbox Code Playgroud)

但是,当然,我不能有多个冲突的配置文件.

我需要帮助我如何在设计上实现这样的东西.

小智 2

您可以将cancan gem 与设计一起使用来管理角色并一次使用多个模型/范围。或者,您也可以尝试mcms 身份验证。但我建议您也检查一下canard gem,它有大量记录,可以帮助您更快地填补空白。希望这可以帮助。