没有代码重复的白色标签?

时间:2018-01-25 19:09:27

标签: ruby-on-rails core white-labelling

我有一个技术问题,我不确定。

现在我有一个产品/网络应用程序(rails应用程序),我白色标签给其他公司。我主持白色标签,我只是想知道如何摆脱这个必须复制我所有代码的粘性循环。

如果我在一个API上进行更改,我必须对另一个进行更改。我不确定如何解决这个问题,但我认为这很重要。

我已经考虑构建一个核心API,将请求路由到不同的白标服务器,但我不确定这是最佳选择。

非常感谢任何提供的帮助!

1 个答案:

答案 0 :(得分:2)

听起来好像每次添加新公司时都会克隆应用程序,而正确的解决方案是让一个应用程序根据当前公司提供不同的数据。

如果您希望为不同的公司使用不同的dbs,可以使用Apartment gem(有关详细信息,请查看文档),但是您需要确保您的数据库可以处理多个表(PostgreSQL可以&#39 ; T)。或者,如果您希望将记录范围扩展到特定公司,则可以使用Acts As Tenant

我的建议是使用Acts As Tenant,因为大多数dbs在多行中运行良好,但多个表格不太好。