Django会话处理

时间:2011-07-18 19:28:27

标签: sqlalchemy django-orm

我正在构建一个django应用程序。使用SQLAlchemy作为ORM来保存用户的采购订单等数据。但是想要使用django ORM作为会话中间件。

使用这两种ORM组件是否是一个糟糕的设计决定?

如果我只使用一个ORM,我应该使用哪个ORM。

由于 Ĵ

2 个答案:

答案 0 :(得分:0)

如果您要使用Django,您可能会选择它,因为您觉得它比其他Python Web框架更能为您提供项目所需的内容。如果你将SQLAlchemy与Django一起使用,那么你将失去很多Django给你的东西(例如与表单库的搭配,django应用程序的大量集合等)。

另外,我不建议同时使用两者。这不是不可能的事情,但我只是没有看到强迫自己在两个完全不同的API之间来回做同样的事情的优势。

答案 1 :(得分:0)

我使用两者都没有问题。我使用Django的模型来处理会话数据和用户身份验证,并使用SQLAlchemy来处理我的应用程序使用的数据库。

我发现SQLAlchemy更容易使用。但是:

  • 您无法轻松管理SQlAlchemy对象的安全性/用户组。 (对这些组件使用Django)
  • 我不建议让SQLAlchemy和Django访问相同的表,最好使用一个ORM。

否则 - 如果您的SQLAlchemy表与Django分开,并且不需要安全性,表单生成或直接访问Django表,那么它的工作原理非常好。我不使用Django的表格,所以除了我的会话和&用户数据在SQLAlchemy中。

如果你只需要使用一个,那就使用Django ORM,因为否则你会失去Django内置的很多功能,你可能会选择像pylons这样的其他框架。