我会尽量说清楚这是一个非常困难的情况,我会尽量解释清楚。我在 Rails 方面的经验不多,但我想尽我所能地使用 Rails。之前创建过一个主题,但不是很懂Managing Large Scale apps via Rails .
原始情况:
我们开发了一款只考虑一位客户的应用程序。为了满足客户的需求,我们有以下分支机构:
- 发展
- 客户开发(用于测试新开发的单独站点)
- 客户 ACC(用于接受更改的单独站点)
- 客户 PRD(客户生产网站)
现状:
现在我们有了第二个客户,所有的分店都翻了一番。所以我们现在正在为每个客户单独开发更改。这些更改可能包括模型/ Controller /助手更改,并且它们具有不同的样式表 (sass/css) 以及不同的 HTML。
因此,我们的 1 个应用程序已拆分为 2 个单独的应用程序,供 2 个客户使用。现在我必须记住我在每个分支中所做的事情,并尝试将其实现到其他分支中。
问题:
如果有更多客户购买,我将完全失去对管理这些应用程序的控制权。所以每个客户都可以有不同的 CSS/不同的 HTML/不同的模型/ Controller /库。
问题示例:
- 每个客户都有不同的config/connections.yml文件
- 每个客户都有不同的翻译文件config/locales/en.yml
- 一个客户希望拥有一个包含用户(模型/ Controller )的数据库,另一个客户不想将用户保留在数据库中
我的想法:
当更多客户购买此应用程序时,我真的很害怕失去对该应用程序的控制。我很害怕当 25 个客户购买它时,我将拥有 100 个 Github 分支。我不知道是否有很多人有这个问题,或者我是否应该重新开始编写这些应用程序。我不知道这是否可能,但如果有人能帮助我,那就太棒了。
最佳答案
恕我直言,请考虑以下几点以便更好地管理具有多个客户的应用程序:
关于css - 为不同客户定制的 Rails 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26000743/