如何遍历MongoDB中的集合并将其显示在下拉菜单中?

时间:2019-06-15 14:19:58

标签: python mongodb flask pymongo

我的项目使用Flask,PyMongo,MongoDB和Bootstrap。

该项目是一个博客,用户可以在其中提交文章。每篇文章将成为一个新文档。在提交之前,他们必须选择一个类别,该类别实际上是一个集合-有5个不同的主题,并且每个主题将在下拉菜单中表示为一个类别。

关于我的Flask代码:

有5个收藏集。每个集合的路径都保存在变量中。此后,一个名为“类别”的变量包含所有这些变量。之后,一个名为“ findcategories”的变量包含一段代码,该代码告诉Mongo仔细查看类别的内容。

关于我的HTML代码:

这非常简单-我试图遍历“ findcategories”中的项目并将其显示在下拉菜单中。

App.py

@app.route("/post")
def post():
    fashion = mongo.db.fashion.find()
    generalnews = mongo.db.general_news.find()
    health = mongo.db.health.find()
    technology = mongo.db.technology.find()
    sports = mongo.db.sports.find()
    categories = fashion, generalnews, health, sports, technology
    findcategories = mongo.db.categories.find()
    return render_template("post.html", fashion=fashion, 
    generalnews=generalnews, health=health, technology=technology, 
    sports=sports, categories=categories, findcategories=findcategories)

Post.html

<div class="dropdown form-group">
    <button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria- expanded="false">Category</button>
    <div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
        <a class="dropdown-item disabled" href="#">Select a category</a>
        {% for item in findcategories %}
        <a class="dropdown-item" href="#">{{ item.findcategories }}</a>
        {% endfor %}
    </div>
</div>

该代码不起作用。下拉菜单为空(不计算无效菜单项)

0 个答案:

没有答案