使用Flask-PyMongo插入文档

时间:2016-03-24 01:53:43

标签: python mongodb flask pymongo

我有一个MongoDB数据库,我想在Flask应用程序中使用Flask-PyMongo来处理它。如何添加数据库和集合以便添加用户文档?

from flask import Flask, render_template, url_for
from flask.ext.pymongo import PyMongo

app = Flask(__name__)
app.config['MONGO_DBNAME'] = 'microblogdb'
app.config['MONGO_URI'] = 'mongodb://briangunsel:password@microblog:27017/microblogdb'
mongo = PyMongo(app, config_prefix='MONGO')


@app.route('/')
def home():
    posts = mongo.db.posts.find({})
    return render_template('users.html', posts=posts)

app.run(debug=True)

更新: 只有上面的代码,当我启动服务器(python init .py)并且我去加载网页时,它加载大约10秒然后给我这个错误{{3} }。我在另一个cmd提示符下运行数据库microblogdb,并将mongo --dbpath设置为\ data \,这是我在微博文件夹中创建的文件夹。通过mongo解释器,我添加了一个posts集合,它仍然给我同样的错误。

1 个答案:

答案 0 :(得分:1)

mongo.db.users返回您configured的数据库上的用户集合。 Flask-PyMongo正在使用PyMongo驱动程序,它有大量文档。 PyMongo的tutorial解释了如何插入文档。您已有代码可以提取拥有online=True的用户。

app.config['MONGO_URI'] = 'mongodb://username:password@host:port/db_name'
user_id = mongo.db.users.insert_one({'name': 'david'}).inserted_id