Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用MongoAlchemy删除数据库的所有内容_Python_Flask_Mongoalchemy - Fatal编程技术网

Python 如何使用MongoAlchemy删除数据库的所有内容

Python 如何使用MongoAlchemy删除数据库的所有内容,python,flask,mongoalchemy,Python,Flask,Mongoalchemy,正如标题所示,我想删除数据库的所有内容。我正在用Python为数据库使用Flask和MongoAlchemy制作一个应用程序。我有一个为文档建模的类People。结构如下: class People(db.Document): Name = db.StringField() Age = db.IntField() Password = db.StringField() Vms = db.AnythingField() 使用remove方法,根据名称或其他详细信息

正如标题所示,我想删除数据库的所有内容。我正在用Python为数据库使用Flask和MongoAlchemy制作一个应用程序。我有一个为文档建模的类People。结构如下:

class People(db.Document):
    Name = db.StringField()
    Age = db.IntField()
    Password = db.StringField()
    Vms = db.AnythingField()
使用remove方法,根据名称或其他详细信息,我一次只能删除一个文档,但我希望能够一次删除所有文档

这是我基于名称删除文档的函数

def delete_document(name):
    x = People.query.filter(People.Name == name).first()
    x.remove()

其中People是对model类的引用。

显然有一种简单的方法,使用Query类中的一个内置方法,remove\u all。使用remove\u all方法,您可以从列表中的数据库中获取所有结果,然后可以对每个实例调用remove方法。代码发布在下面。不确定是否有更有效的方法,所以请随意发布

def deleteAll():
    x = People.query.all()
    for i in range(0, len(x)):
        x[i].remove()

我认为人们不会对您的类感兴趣,他们更可能会对您如何初始化和与db通信感兴趣itself@JackParkinson:我明白了。我编辑了这篇文章。