Flask 1.1.x-使用模板的基本路由问题

因此,我将跟随LinkedIn上有关flask的教程:“使用flask进行全栈Web开发 “而且,我在使用模板路由的问题上遇到了这个问题。我不知道是什么原因造成的,因为我对flask并不陌生,而且我在文档中也没有看到任何有关此问题的信息。我认为我必须已经编写了flask无法运行的代码,因为语法是因为flask自己的文件正在从编译器产生问题,所以我确定问题出在路由中,因为错误是在我之后发生的在命令行上运行“ flask run”,然后重新加载页面。

错误消息:

   File
 "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\flask\app.py",line 2446,in wsgi_app
     response = self.full_dispatch_request()   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\flask\app.py",line 1951,in full_dispatch_request
     rv = self.handle_user_exception(e)   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\flask\app.py",line 1820,in handle_user_exception
     reraise(exc_type,exc_value,tb)   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\flask\_compat.py",line 39,in reraise
     raise value   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\flask\app.py",line 1949,in full_dispatch_request
     rv = self.dispatch_request()   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\flask\app.py",line 1935,in dispatch_request
     return self.view_functions[rule.endpoint](**req.view_args)   File "C:\Users\user\Desktop\flask\enrollment\application\routes.py",line
 7,in index
     return render_template('index.html')   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\flask\templating.py",line 137,in render_template
     return _render(   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\flask\templating.py",line 120,in _render
     rv = template.render(context)   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\jinja2\asyncsupport.py",line 76,in render
     return original_render(self,*args,**kwargs)   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\jinja2\environment.py",line 1008,in render
     return self.environment.handle_exception(exc_info,True)   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\jinja2\environment.py",line 780,in handle_exception
     reraise(exc_type,tb)   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\jinja2\_compat.py",line 37,in reraise
     raise value.with_traceback(tb)   File "C:\Users\user\Desktop\flask\enrollment\application\templates\index.html",line 16,in 
     {% include "includes/nav.html" %}   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\jinja2\environment.py",line 1005,in render
     return concat(self.root_render_func(self.new_context(vars)))   File
 "C:\Users\user\Desktop\flask\enrollment\application\templates\index.html",line 14,in root
        File "C:\Users\user\Desktop\flask\enrollment\application\templates\includes\nav.html",line 13,in root   File
 "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\jinja2\runtime.py",line 262,in call
     return __obj(*args,**kwargs)   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\flask\helpers.py",line 370,in url_for
     return appctx.app.handle_url_build_error(error,endpoint,values)   File
 "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\flask\app.py",line 2215,in handle_url_build_error
     reraise(exc_type,in reraise
     raise value   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\flask\helpers.py",line 357,in url_for
     rv = url_adapter.build(   File "c:\users\user\desktop\flask\enrollment\venv\lib\site-packages\werkzeug\routing.py",line 2020,in build
     raise BuildError(endpoint,values,method,self) werkzeug.routing.BuildError: Could not build url for endpoint
 'courses'. Did you mean 'index' instead?
 127.0.0.1 - - [10/Nov/2019 09:42:23] "GET /index HTTP/1.1" 500 -

routes.py

from application import app
from flask import render_template


@app.route('/index')
def index():
    return render_template('index.html')

index.html:

<!DOCTYPE html>
<html>
<head>
    <title>UTA - Home Page</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
          integrity="sha384-Gn5384xqq1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
    <link rel="stylesheet" href="static/css/main.css"/>
</head>
<body>

<div class="container-fluid text-center top-container">
    <img src="static/images/uta-logo-200.png">
</div>
<div class="container">

    {% include "includes/nav.html" %}

    <div class="row">
        <div class="col-md-12 text-center">
            <h1>Welcome to Universal Tech Academy.</h1>

            {% if login %}
            <h3>Let's get started.</h3>
            {% else %}
            <p>Already registered? <a href="{{url_for('login') }}">Login</a></p>
            {% endif %}

            </div>
    </div>
</div>

{% include "includes/footer.html" %}
</body>
</html>
sakura52 回答:Flask 1.1.x-使用模板的基本路由问题

  

无法为端点“课程”建立url。你的意思是“索引”   代替? 127.0.0.1--[10 / Nov / 2019 09:42:23]“ GET / index HTTP / 1.1”   500-

werkzeug试图为“课程”构建路由端点,但找不到任何可路由的端点。

您需要在Flask代码中构造另一条路由才能使其正常工作,就像使用index一样:

@app.route('/courses')
def courses():
    return render_template('courses.html')
本文链接:https://www.f2er.com/3128627.html

大家都在问