from minimongo import Model, MongoCollection
class MyObject(Model):
model = MongoCollection(database='test', collection='my_collection')
m = MyObject()
m.x = 1
m.field = 'value'
m.other = {'list': True}
m.save()
x = MyObject({'x': 1, 'y': 2}).save()
objs = MyObject.find({'x': 1})
for o in objs:
print o
class Post(Document):
title = StringField(max_length=120, required=True)
author = ReferenceField(User)
class TextPost(Post):
content = StringField()
class ImagePost(Post):
image_path = StringField()
class LinkPost(Post):
link_url = StringField()
你想要MongoKit。它是比PyMongo更高的抽象层。不确定您是否在使用Django,但也存在django-mongokit集成。
这个blog post的例子。注意,一旦定义了结构(例如atari.make、c64.model,…),计算机实例就可以直接引用make/model。不需要字典:
由于对MongoKit或MongoEngine都不满意,我决定为Python编写自己的面向对象接口。
我将所有查询直接委托给pymongo,因此那里的查询语法是相同的。大多数情况下,它只是一个结果的对象包装器,还有其他一些帮助程序,如数据库连接池、DBRef支持和其他方便的方法,可以让您的生活更轻松。
它名为Minimongo,可以从github获得。快乐黑客!
示例:
另一个选项是MongoEngine。MongoEngine的ORM与Django使用的ORM非常相似。
示例(来自教程):
相关问题 更多 >
编程相关推荐