这就是我正在努力实现的目标。我想构建一个带有管理员和客户端门户的应用程序。所以我想为这两个门户构建一个单一的 RoR 应用程序,我希望在根级别保持每个门户的代码分开。所以基本上以下是我想要在我的项目中拥有的文件夹结构。
/admin
/client
/modals
/config
/db
......
所以我想在每个文件夹中分别保留与每个项目相关的 Controller 、 View 和其他内容。
所以我也想将模态文件夹移动到根级别。我阅读了 RoR 中的命名空间,但据我所知,我无法单独使用命名空间。我想我需要做一些配置级别更改器,不是吗?
请让我知道是否有办法做到这一点。
谢谢。
最佳答案
您的建议听起来像是 5 个独立运行的 Rails 应用程序。这些目录中的每一个是否都有自己的Gemfile
,数据库?
可以做你想做的事,但几乎肯定会比它的值(value)更麻烦。您必须覆盖一些路径配置,进行调整以连接 models/views/controllers
每个实体的目录( https://guides.rubyonrails.org/action_view_overview.html#view-paths ),可能还有更多。 Rails 是一个固执己见的框架,它不会优雅地做这样的事情。
'Rails' 的方法是:
app/models/admin app/views/admin app/controllers/admin etc.
目录class Admin::SomeController < ApplicationController
如果其中每一个确实是它自己的应用程序,那么您可能希望为它们中的每一个创建一个存储库,以便它们分别处于版本控制中。
关于ruby-on-rails - 是否可以在 RoR 项目的根级别为不同的应用程序保留不同的文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66660613/