2014-09-23 59 views
0

我会尽可能使这一点尽可能清楚,这是一个非常困难的情况,我会尽可能地解释清楚。我在Rails方面没有太多的经验,但我想以最好的方式做Rails。我之前创建了一个前面的主题,但我并不真正了解它Managing Large Scale apps via Rails针对不同客户的可定制Rails应用程序

原始状态:

我们已经与1只考虑客户开发的应用程序。为了养活客户的需求,我们有如下分支:

  • 发展
  • 客户DEV
  • 客户ACC(接受改变单独的网站)
  • 客户PRD(单独用于测试新开发的网站)(中客户生产网站)

现状:

现在我们有了第二个客户,所有分支机构都翻了一番。所以我们现在正在分别为每个客户开发更改。这些更改可能包括模型/控制器/帮助程序更改,它们具有不同的样式表(sass/css)以及不同的HTML。

因此,我们的1个应用程序已被分为2个客户的2个单独的应用程序。现在我必须记住我在每个分支所做的事情,并尝试将其实施到其他分支机构中。

问题:

我完全会输,如果更多的客户购买它管理这些应用程序的控制。所以每个客户可以有不同的CSS /不同的HTML /不同的模型/控制器/库。

问题的例子:

  • 每个客户都有不同的配置/ connections.yml文件
  • 每个客户都有不同的翻译文件配置/区域设置/ en.yml
  • 一个客户想要有一个数据库与用户(模型/控制器)另一个不希望保持用户在数据库中

我的想法:

我对失去这个应用程序时,更多的客户会购买这个应用程序的控制真的很害怕。我很害怕我有100个Github分支机构,25个客户会购买它。我不知道很多人是否有这个问题,或者我应该重新开始编写这些应用程序。我不知道这是否可能,但如果有人可以帮助我,这将是非常棒的。

回答

0

恕我直言,请考虑以下几点为与多个客户应用程序更好的管理:

  1. 而是为每个客户建立单独的分支,并分别开发的代码,在为多个客户同一分支开发代码(你可以继续有4个分支根据您的发布管理)。
  2. 如果客户需要的功能不是 ,那么创建设置界面以打开/关闭功能 。这可以通过在数据库中存储的值或使用的宝石 像flipperrollout
  3. 对于不同的HTML结构和CSS,不保持多个模板/谐音,但维持针对不同的客户不同的布局,并有条件地呈现与相应的CSS相应的布局来完成。让模板&部分对所有客户都是通用的。
相关问题