当前位置:  开发笔记 > 编程语言 > 正文

任何Python ORM(SQLAlchemy?)都可以与Google App Engine配合使用吗?

如何解决《任何PythonORM(SQLAlchemy?)都可以与GoogleAppEngine配合使用吗?》经验,为你挑选了1个好方法。

我想使用Python版本的App Engine,而不是专门为Google Data Store编写我的代码,我想用可以附加到Big Table的通用Python ORM创建我的模型,或者,如果我更喜欢,以后的常规数据库.是否有任何Python ORM如SQLAlchemy允许这样做?



1> Koen Bok..:

从技术上讲,这不会被称为ORM(对象关系映射器),而是DAL(数据库抽象层).对于AppEngine,ORM部分并不是很有趣,因为API已经处理了对象映射并执行了一些简单的关系映射(请参阅RelationProperty).

还要意识到DAL永远不会让你在AppEngine的数据存储区和像mysql这样的"普通"sql数据库之间切换,因为它们的工作方式完全不同.它可能允许您在不同的键值存储之间切换,如reddis,mongo或tokyo cabinet.但由于它们都具有非常不同的特征,所以在使用之前我会三思而后行.

最后,DAL传统上位于数据库接口之上,但是使用AppEngine的api,您可以实现自己的"存根",基本上可以让您在其api上使用其他存储后端.Mongo的人为MongoDB 写了一个非常好的.dev_appserver附带一个基于文件系统的.

现在回答:是的,有一个!它是web.py的一部分.如果由于上述原因,我没有真正尝试过,所以我不能说它是否好.

PS.我知道Ruby在keyvalue商店中也有一个很好的DAL项目,但我现在找不到它......也许在某些时候可以很好地移植到Python.


web2py(web2py.com)和web.py(webpy.org)是2个不同的框架:)
推荐阅读
保佑欣疼你的芯疼
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有