我正在使用rails开发企业Web应用程序。 我试图找出在2-3个rails应用程序之间使用相同模型和数据库的最佳方法。
我的项目包含不同的应用程序,例如用户应用程序,客户应用程序和管理员应用程序。 所有这3个将使用相同的数据库和几乎相同的模型。 我想创建3个不同的rails应用程序并将它们部署到不同的服务器上。
分享模特的最佳方式是什么?
答案 0 :(得分:2)
构建一个包含模型和数据库的应用程序。使所有控制器返回json(或xml)。不为此应用提供观看次数。然后,创建您的其他应用程序,以便他们对第一个应用程序进行http调用。这使您可以根据需要将原始应用程序的模型/数据库/功能共享给尽可能多的其他应用程序。未来的应用程序甚至可以在必要时使用自己的或补充数据存储,因为它们只使用原始应用程序作为服务。
答案 1 :(得分:0)
其中一个解决方案是编写自定义库或gem,并将所有常用代码放在此处。
答案 2 :(得分:0)
在各种项目的database.yml文件中,只需将它们指向同一个数据库即可。然后在各种项目中使用相同的类名。
答案 3 :(得分:0)
您可以构建4个rails应用。 datastoreapp包含数据模型,控制器返回json(无视图)。 userapp,custapp,adminapp可以对数据存储区域api调用统一数据。