【问题标题】:How to create models if I am using various types of database simultaneously?如果我同时使用各种类型的数据库,如何创建模型?
【发布时间】:2013-06-24 13:41:17
【问题描述】:

我有一个烧瓶应用程序,它使用三种类型的数据库 - MySQL、Mongo 和 Redis。现在,如果它是简单的 MySQL,我可以使用 SQLAlchemy 或那条线上的东西进行数据库建模。现在,在我在单个应用程序中使用许多不同类型的数据库的当前场景中,我认为我必须创建自定义模型。

您能否建议最好的做法是什么?或者有没有相同的教程?

【问题讨论】:

  • 当然你有你的理由,但我只能祝你好运; 3 个非常不同的数据库看起来是一个非常复杂的设计,无论建议多么巧妙,结果都可能难以维护。

标签: python database flask flask-sqlalchemy


【解决方案1】:

这不是一个有效的模型,但这会起作用:

您可以编写三种不同的 API(RESTful 模式是个好主意)。每个都是独立的 Flask 应用程序,侦听不同的端口(可能通过 localhost,而不是公共 IP 接口)。

第四个 Flask 应用程序是外部客户端可以访问的主要应用程序。主应用程序中的视图函数将向其他三个 API 发出 API 调用,以获取它们认为合适的数据。

您可以优化三个数据库 API 之一并将其合并到主应用程序中,只留下两个(可能是较少使用的两个)作为 API 实现。

【讨论】:

    【解决方案2】:

    如果您希望在一个项目中拥有三个不同数据库的模型(我同意 Paulo 的观点,这可能不是最漂亮的解决方案),您可以使用 flask-sqlalchemy 使用绑定键轻松做到这一点。

    http://pythonhosted.org/Flask-SQLAlchemy/binds.html

    它非常简单,就像一个魅力。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-04
      • 1970-01-01
      • 2016-04-06
      • 2016-06-05
      • 2017-01-21
      • 1970-01-01
      • 2012-01-16
      相关资源
      最近更新 更多