MongoEngine 查询数据库
connect() 函数返回一个 MongoClient 对象。使用 list_database_names() 该对象可用的方法,我们可以检索服务器上的数据库数量。
from mongoengine import * con=connect('newdb') dbs=con.list_database_names() for db in dbs: print (db)
也可以使用 list_collection_names() 方法获取数据库中的集合列表。
collections=con['newdb'].list_collection_names() for collection in collections: print (collection)
如前所述,Document 类具有 objects 属性,可以访问与数据库关联的对象。
newdb 数据库有一个 products 集合,对应于下面的 Document 类。要获取所有文档,我们使用 objects 属性如下:
from mongoengine import * con=connect('newdb') class products (Document): ProductID=IntField(required=True) Name=StringField() price=IntField() for product in products.objects: print ('ID:',product.ProductID, 'Name:',product.Name, 'Price:',product.price)
ID: 1 Name: Laptop Price: 25000 ID: 2 Name: TV Price: 50000 ID: 3 Name: Router Price: 2000 ID: 4 Name: Scanner Price: 5000 ID: 5 Name: Printer Price: 12500