代码之家  ›  专栏  ›  技术社区  ›  Geeocode

为什么flask-pymongo-bulk-writes方法不存在?

  •  0
  • Geeocode  · 技术社区  · 7 年前

    我有一些这样的代码片段:

    from flask import Flask
    from flask_pymongo import PyMongo
    from pymongo import InsertOne, UpdateOne, DeleteOne, ReplaceOne
    from flask import jsonify
    
    app = Flask(__name__)
    app.config['MONGO_DBNAME'] = 'MyDB'
    
    mongo = PyMongo(app)
    coll = mongo.db['collection1']
    
    requests = []
    for d in data_to_delete:
        requests.append(DeleteOne({'key1': d}))
    
    result = coll.bulk_writes(requests)
    
    return jsonify(result=result.deleted_count)
    

    当我尝试执行它时,会收到错误消息:

    TypeError: 'Collection' object is not callable. If you meant to call the 'bulk_writes' method on a 'Collection' object it is failing because no such method exists.
    

    PyMongo documentation 说的是 Collection 对象有这个方法,尽管我知道 Flask-Pymongo 是包装纸吗 PyMongo . 有什么问题,我怎么用 bulk_writes() 具有 烧瓶皮蒙 收藏?

    谢谢你的帮助!

    1 回复  |  直到 7 年前
        1
  •  1
  •   dcrosta    7 年前

    看起来你做了一个打字错误,在方法名上加了一个“s”。尝试 bulk_write 没有“S”。

    flask pymongo与pymongo本身和mongodb shell一样,将集合中未知的属性名视为点集合名,因此它认为您正在尝试调用一个名为 collection1.bulk_writes .

    推荐文章