【问题标题】:Ruby on Rails - Multiple applications with same model and dbRuby on Rails - 具有相同模型和数据库的多个应用程序
【发布时间】:2014-07-12 01:45:51
【问题描述】:

我正在使用 Rails 开发企业 Web 应用程序。 我正在尝试找出在 2-3 个 rails 应用程序之间使用相同模型和数据库的最佳方式。

我的项目由不同的应用程序组成,例如用户应用程序、客户应用程序和管理应用程序。 所有这 3 个都将使用相同的数据库和几乎相同的模型。 我想创建 3 个不同的 rails 应用程序并将它们部署到不同的服务器。

共享模型的最佳方式可能是什么?

【问题讨论】:

    标签: ruby-on-rails ruby architecture


    【解决方案1】:

    构建一个包含您的模型和数据库的应用。让所有控制器返回 json(或 xml)。不为此应用程序创建任何视图。然后,创建您的其他应用程序,以便它们对第一个应用程序进行 http 调用。这使您可以根据需要将原始应用程序的模型/数据库/功能共享给尽可能多的其他应用程序。如有必要,未来的应用程序甚至可以使用自己的或补充的数据存储,因为它们仅将原始应用程序用作服务。

    【讨论】:

    • 感谢@KAM,这是有道理的。你的解决方案让我想起了 ActiveResource link
    【解决方案2】:

    其中一种解决方案是编写自定义库或gem,并将所有常用代码放在此处。

    【讨论】:

      【解决方案3】:

      在您的各种项目的 database.yml 文件中,让它们指向同一个数据库。然后在您的各种项目中使用相同的类名。

      【讨论】:

        【解决方案4】:

        您可以构建 4 个 rails 应用程序。 datastoreapp 包含数据模型,控制器返回 json(无视图)。 userapp、custapp、adminapp 可以对 datastoreapp 进行 api 调用以获取合并数据。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-09-25
          • 1970-01-01
          • 1970-01-01
          • 2012-07-29
          • 1970-01-01
          • 2014-03-26
          • 1970-01-01
          • 2012-03-09
          相关资源
          最近更新 更多