Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.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 使用Flask&;遍历MongoDB数据时出现问题;金甲2号_Python_Html_Flask_Jinja2 - Fatal编程技术网

Python 使用Flask&;遍历MongoDB数据时出现问题;金甲2号

Python 使用Flask&;遍历MongoDB数据时出现问题;金甲2号,python,html,flask,jinja2,Python,Html,Flask,Jinja2,Flask/Python是全新的,我正试图使用Flask遍历来自MongoDB的数据列表。抓取的数据没有任何问题,但我得到的结果是将所有数据库条目填充到一个div中。下面我提供了一些屏幕截图来进一步解释问题 两个MongoDB条目: 这个想法是有两张单独的卡片来显示这两个条目。卡将显示移动的名称,单击后,其余信息将以模式显示 HTML模板代码: <div id="modal1" class="modal request_info_wrap">

Flask/Python是全新的,我正试图使用Flask遍历来自MongoDB的数据列表。抓取的数据没有任何问题,但我得到的结果是将所有数据库条目填充到一个div中。下面我提供了一些屏幕截图来进一步解释问题

两个MongoDB条目:


这个想法是有两张单独的卡片来显示这两个条目。卡将显示移动的
名称
,单击后,其余信息将以模式显示

HTML模板代码:

<div id="modal1" class="modal request_info_wrap">
            {% for user_details in user_details: %}
            <div class="modal-content request_info_card">

                <h4 class="request_name_header">{{ user_details.user_name }} {{ user_details.user_lname }}</h4>
                <p class="request_info"><span class="request_title">Request
                        Address:</span><br>{{ user_details.user_street }}<br>{{ user_details.user_postcode }}</p><br>
                <p class="request_info"><span class="request_title">Contact
                        Number:</span><br>{{ user_details.user_contact }}</p><br>
                <p class="request_info"><span class="request_title">Requested
                        Date:</span><br>{{ user_details.user_date }}</p><br>
                <div class="deep_clean_section">
                    <p class="request_info" style="color: #000;"><span class="request_title">Deep Clean
                            for:</span><br>{{ user_details.carpet_clean }}<br>{{ user_details.floor_steam }}<br>
                        {{ user_details.white_goods }}<br>{{ user_details.window_clean }}
                    </p>
                </div><br>
                <hr style="margin: 0;">
                <p class="request_info"><span class="request_title">Customer
                        Message:</span><br>{{ user_details.user_message }}</p>

            </div>
            <div class="modal-footer job_card_btn_wrap">
                <a href="#" class="modal-close replyto_btn">Reply to
                    {{ user_details.user_name }}</a>
            </div>
            {% endfor %}
        </div>
    </div>
@app.route("/deep_clean_info", methods=["GET", "POST"])
def deep_clean_info():
    if request.method == "POST":
        user_details = {
            "user_name": request.form.get("user_name"),
            "user_lname": request.form.get("user_lname"),
            "user_contact": request.form.get("user_contact"),
            "user_street": request.form.get("user_street"),
            "user_postcode": request.form.get("user_postcode"),
            "user_message": request.form.get("user_message"),
            "user_date": request.form.get("user_date"),
            "carpet_clean": request.form.get("carpet_clean"),
            "floor_steam": request.form.get("floor_steam"),
            "white_goods": request.form.get("white_goods"),
            "window_clean": request.form.get("window_clean"),
        }
        mongo.db.user_details.insert_one(user_details)
        flash("Request sent to cleaner")
        return redirect(url_for("deep_clean_info"))
    details = mongo.db.user_details.find().sort("user_details", 1)
    return render_template("deep_clean_details.html", user_details=details)
我确实认为问题在于我的模板中的jinja2 for循环,但如果需要任何其他信息,我将非常乐意提供帮助,我们将不胜感激。谢谢

编辑
虽然我不想使用这种样式来显示数据,但HTML模板似乎可以很好地进行迭代

<ul class="collapsible popout pending_jobs">
        {% for user_details in user_details %}
        <li>
            <div class="collapsible-header request_item_header">
                <i class="fas fa-comment-dots"></i>
                {{ user_details.user_name }} {{ user_details.user_lname }}

            </div>

            <div class="collapsible-body request_info">
                <div class="row">
                    <span class="row info_headers">Address:<br>
                        <span class="light_text info_text" id="customer_address">
                            {{ user_details.user_street }}</span>
                    </span><br>
                    <span class="info_headers">Contact Number:<br>
                        <span class="light_text info_text" id="customer_contact">{{ user_details.user_contact }}</span>
                    </span><br>
                </div>
                <span class="info_headers row customer_request_style">Customer Request:<br>
                    <span class="light_text italic_text" id="customer_request">{{ user_details.user_message }}</span>
                </span><br>
                <span class="info_headers">Cleaning Date:<br>
                    <span class="light_text italic_text" id="customer_request">{{ user_details.user_date }}</span>
                </span><br>
                <a href="{{ url_for('cleaner_chat') }}"><button class="respond_to_user">Respond to
                        {{ user_details.user_name }}?</button></a>

                     

            </div>
        </li>
        {% endfor %}
    </ul>
    {user_details%}中的用户_详细信息为%
  • {{user\u details.user\u name}{{{user\u details.user\u lname} 地址:
    {{user_details.user_street}}
    联系电话:
    {{user\u details.user\u contact}
    客户请求:
    {{user_details.user_message}}
    清洁日期:
    {{user\u details.user\u date}
  • {%endfor%}

请共享代码/数据,不要images@balderman抱歉,我已经用代码更新了屏幕截图。
{%for user\u details in user\u details%}
这是一个bug吗?您的外部for循环使用了与迭代器相同的项目变量名。这可能会把事情搞砸吗?试试这样的方法:
{%for user\u details\u lst%}