Css 针对不同客户的可定制Rails应用程序

Css 针对不同客户的可定制Rails应用程序,css,ruby-on-rails,ruby-on-rails-3,git,ruby-on-rails-4,Css,Ruby On Rails,Ruby On Rails 3,Git,Ruby On Rails 4,我会尽可能清楚地说明这是一个非常困难的情况,我会尽可能清楚地解释。我在Rails方面没有太多经验,但我想用最好的方式来做Rails。我以前创建过一个主题,但我并不真正理解它 原始情况: 我们开发了一款只考虑1名客户的应用程序。为满足客户需求,我们设有以下分支机构: 发展 客户开发(用于测试新开发的单独站点) 客户ACC(接受变更的单独站点) 客户PRD(客户制作网站) 当前情况: 现在我们有了第二个客户,所有的分支机构都增加了一倍。因此,我们现在分别为每个客户开发更改。这些更改可能包括模型/

我会尽可能清楚地说明这是一个非常困难的情况,我会尽可能清楚地解释。我在Rails方面没有太多经验,但我想用最好的方式来做Rails。我以前创建过一个主题,但我并不真正理解它

原始情况:

我们开发了一款只考虑1名客户的应用程序。为满足客户需求,我们设有以下分支机构:

  • 发展
  • 客户开发(用于测试新开发的单独站点)
  • 客户ACC(接受变更的单独站点)
  • 客户PRD(客户制作网站)
当前情况:

现在我们有了第二个客户,所有的分支机构都增加了一倍。因此,我们现在分别为每个客户开发更改。这些更改可能包括模型/控制器/助手更改,并且它们具有不同的样式表(sass/css)和不同的HTML

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

问题:

如果有更多的客户购买这些应用程序,我将完全失去管理这些应用程序的控制。因此,每个客户都可以拥有不同的CSS/不同的HTML/不同的模型/控制器/库

问题示例:

  • 每个客户都有不同的配置/connections.yml文件
  • 每个客户都有不同的翻译文件config/locales/en.yml
  • 一个客户希望拥有一个包含用户(模型/控制器)的数据库,另一个客户不希望将用户保留在数据库中
我的想法:


我真的很害怕失去对这个应用程序的控制,因为更多的客户会购买这个应用程序。我担心我会有100个Github分支,而25个客户会购买它。我不知道是否有很多人有这个问题,或者我应该重新开始编写这些应用程序。我不知道这是否是可能的,但是如果有人能帮我,那就太棒了。

< P> iMHO,请考虑以下几点,以更好地管理多个客户的应用:

  • 与其为每个客户创建单独的分支机构并单独开发代码,不如为多个客户在同一分支机构中开发代码(您可以根据发布管理继续拥有4个分支机构)
  • 如果有任何功能是客户要求的,但不是 通过其他方式,然后创建用于旋转特征的设置界面 开/关。这可以通过在数据库中存储值或使用gems来实现 喜欢或
  • 对于不同的HTML结构和css,不要维护多个模板/部分,而是为不同的客户维护不同的布局,并有条件地使用适当的css呈现相应的布局。让模板和部分对所有客户通用