我有一个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
集合,它仍然给我同样的错误。
答案 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