Python 404 flask webapp中出现错误,无法找到原因

Python 404 flask webapp中出现错误,无法找到原因,python,html,flask,Python,Html,Flask,运行webapp时会出现404错误,即使将其更改为最基本的模板,该错误甚至不允许运行my error html。我不知道在哪里找不到我的请求 我试着从base.html中删除所有样式表,看看是否是这些,我试着更改error.html,看看它是否真的会运行。我试着注释掉html文件中的所有url 我把结果注释掉了一点,所以我不这么认为 routes.py from app import app from flask import Flask, abort, jsonify, re

运行webapp时会出现404错误,即使将其更改为最基本的模板,该错误甚至不允许运行my error html。我不知道在哪里找不到我的请求

我试着从base.html中删除所有样式表,看看是否是这些,我试着更改error.html,看看它是否真的会运行。我试着注释掉html文件中的所有url

我把结果注释掉了一点,所以我不这么认为

routes.py


    from app import app
    from flask import Flask, abort, jsonify, redirect, url_for, request, render_template
    from werkzeug.exceptions import HTTPException
    from app.results import clean_data, get_response


    @app.errorhandler(Exception)
    def handle_error(e):
        '''
        code = 500
        if isinstance(e, HTTPException):
            code = e.code'''
        print(str(e))
        return render_template("error.html")


    @app.route('/', methods=['GET', 'POST'])
    def index():
        data = clean_data(request.form)
        response = get_response(data)
        print(response)
        return render_template("index.html")

base.html


    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">


            <title>Default Scorer -- Ebury</title>
            <meta name = "viewport" content = "width=device-width", initial-scale = 1, shrink-to-fit=no">
            <link rel="icon" href="{{ url_for('static', filename='favicon.ico') }}">
            <!-- CSS-->
            <link rel="stylesheet" href="{{ url_for('static', filename='css/style.css') }}">
            <link href="https://fonts.googleapis.com/css?family=Roboto:100" rel="stylesheet">
            <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css" integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous">
            <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
            <!-- JS-->
            <!-- [if lt IE 9]><script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.min.js" type="text/javascript"></script><![endif] -->
            <script src="https://ebury-chameleon.s3.amazonaws.com/1.17.0/scripts/ebury-chameleon.js" type="text/javascript"></script>

        </head>

        <nav class="navbar navbar-expand-lg navbar-dark bg-dark">
        <a class="navbar-brand" href="/">
            <img src="{{ url_for('static', filename='img/Ebury.png') }}"  width="80" height="30" alt="">
        </a>
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        <div class="collapse navbar-collapse" id="navbarNavAltMarkup">
            <div class="navbar-nav">
                <a class="nav-item nav-link active" href="/"><b>Default Scorer</b> <span class="sr-only">(current)</span></a>
            </div>
            <div class="navbar-nav ml-auto">
                <a class="nav-item nav-link" href="/logout">Log out</a>
            </div>
        </div>
        </nav>

        <body>
        </body>

</html>

默认得分手——埃伯里

对于未来的人:我解决了这个问题,因为base.html没有指定扩展的位置。正确的base.html代码应该是:

    <html>
        <head>
            <meta charset="utf-8">


            <title>Default Scorer -- Ebury</title>
            <meta name = "viewport" content = "width=device-width", initial-scale = 1, shrink-to-fit=no">
            <link rel="icon" href="{{ url_for('static', filename='favicon.ico') }}">
            <!-- CSS-->
            <link rel="stylesheet" href="{{ url_for('static', filename='css/style.css') }}">
            <link href="https://fonts.googleapis.com/css?family=Roboto:100" rel="stylesheet">
            <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css" integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous">
            <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
            <!-- JS-->
            <!-- [if lt IE 9]><script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.min.js" type="text/javascript"></script><![endif] -->
            <script src="https://ebury-chameleon.s3.amazonaws.com/1.17.0/scripts/ebury-chameleon.js" type="text/javascript"></script>

        </head>

        <nav class="navbar navbar-expand-lg navbar-dark bg-dark">
        <a class="navbar-brand" href="/">
            <img src="{{ url_for('static', filename='img/Ebury.png') }}"  width="80" height="30" alt="">
        </a>
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        <div class="collapse navbar-collapse" id="navbarNavAltMarkup">
            <div class="navbar-nav">
                <a class="nav-item nav-link active" href="/"><b>Default Scorer</b> <span class="sr-only">(current)</span></a>
            </div>
            <div class="navbar-nav ml-auto">
                <a class="nav-item nav-link" href="/logout">Log out</a>
            </div>
        </div>
        </nav>

        <body>
        {% block content %}
        {% endblock %}
        </body>
{% block scripts %}
{% endblock %}
</html>```

默认得分手——埃伯里

这可能是另一个问题,但index.html是否扩展了base.html?无论如何,我在base.html中没有看到{%block content%}。是的,是的,很抱歉,我没有在代码中包含这一点。我想我只是从bt Low复制粘贴的。这看起来像是一个路由问题。由于您的错误处理程序也没有被调用,请尝试验证您实际使用的是正确的文件。似乎此路由文件未加载。你是什么意思?我运行的是正确的文件,就像我更改了发生更改的内容一样。它以前运行过,我想我没有做任何改变。我只是说,我过去设法解决了错误的文件。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>ERROR</title>
    </head>
    <body>
        <h1>ERROR</h1>
    </body>
    </html>

    <html>
        <head>
            <meta charset="utf-8">


            <title>Default Scorer -- Ebury</title>
            <meta name = "viewport" content = "width=device-width", initial-scale = 1, shrink-to-fit=no">
            <link rel="icon" href="{{ url_for('static', filename='favicon.ico') }}">
            <!-- CSS-->
            <link rel="stylesheet" href="{{ url_for('static', filename='css/style.css') }}">
            <link href="https://fonts.googleapis.com/css?family=Roboto:100" rel="stylesheet">
            <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css" integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous">
            <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
            <!-- JS-->
            <!-- [if lt IE 9]><script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.min.js" type="text/javascript"></script><![endif] -->
            <script src="https://ebury-chameleon.s3.amazonaws.com/1.17.0/scripts/ebury-chameleon.js" type="text/javascript"></script>

        </head>

        <nav class="navbar navbar-expand-lg navbar-dark bg-dark">
        <a class="navbar-brand" href="/">
            <img src="{{ url_for('static', filename='img/Ebury.png') }}"  width="80" height="30" alt="">
        </a>
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        <div class="collapse navbar-collapse" id="navbarNavAltMarkup">
            <div class="navbar-nav">
                <a class="nav-item nav-link active" href="/"><b>Default Scorer</b> <span class="sr-only">(current)</span></a>
            </div>
            <div class="navbar-nav ml-auto">
                <a class="nav-item nav-link" href="/logout">Log out</a>
            </div>
        </div>
        </nav>

        <body>
        {% block content %}
        {% endblock %}
        </body>
{% block scripts %}
{% endblock %}
</html>```