当前位置: 首页 > 知识库问答 >
问题:

烧瓶1.1。x-使用模板的基本路由问题

严言
2023-03-14

因此,我将跟随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, exc_value, 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, 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\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 -

路线。派克

from application import app
from flask import render_template


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

指数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>

共有1个答案

丌官利
2023-03-14

无法为终结点“课程”生成url。你是说“索引”吗?127.0.0.1---[2019年11月10日09:42:23]“获取/索引HTTP/1.1”500-

werkzeug正在尝试为“courses”构建路由endpoint,但没有找到任何可路由的endpoint。

您需要在烧瓶代码中构建另一个路由才能使其工作,就像您对index所做的那样:

@app.route('/courses')
def courses():
    return render_template('courses.html')
 类似资料:
  • 问题内容: 我正在用React构建Flask应用程序,但最终遇到了路由问题。 后端负责成为API,因此某些路由如下所示: 以及通往React的主要路线: 我在React应用程序中使用react-router,一切正常,react- router带我进入,并获得了渲染视图,但是当我刷新页面时,Flask应用程序会处理此调用,并且会出错。 最好的解决方案是什么?我正在考虑重定向所有未调用的调用,这是不

  • 所以,我有以下路线在烧瓶: 关于导航到http://127.0.0.1:5000/menu-card/ChIJAxXhIUMUrjsR5QOqVsQjCCI,我得到了正确的响应。 但是,我尝试如下更改URL模式: 关于导航到http://127.0.0.1:5000/menu-card?id=ChIJAxXhIUMUrjsR5QOqVsQjCCI我现在得到一个404错误。我做错了什么?

  • 尽管我对Angular比较陌生,但它应该是如此简单以至于让我发疯。我使用带有“使用角度路由”选项的CLI创建了一个角度项目。创建了一个功能模块,并使用VS代码中的支架插件(Alexander Ivanichev的“Angular Files”)为其添加了一个路由类。一开始,我只是直接在app.component.html中添加组件选择器,它工作得很好,当我添加了路由器出口,将所有东西连在一起,并将

  • 我在用烧瓶做一个网站。它在top.html中使用sql显示一个列表,其中每个元素都是超文本。 所以我想知道从列表中点击了哪个超文本,这样我就可以在/text中加载它各自的内容。请同时提供python代码(flask代码)。

  • 我基本上使用了install命令“$pip install Flask”,当我试图运行一个程序时,它会说“找不到模块”Flask安装在“/usr/local/lib/python2.7/site包”中,但我认为pip的意义在于,我可以到处导入这些包。我试图在我的桌面上运行一个文件,甚至当我将Flask文件夹移动到桌面上时,它也不起作用。有什么建议吗?谢谢

  • 问题内容: 默认情况下,flask使用存储在“ template”目录中的模板文件: 有什么方法可以根据登录用户动态选择模板目录?这就是我想要的目录结构: 现在,如果我具有登录用户的用户名和用户激活的模板的名称,是否可以动态选择要加载模板文件的目录?例如, 而不是固定的 我要实现的目标是为我的Web应用程序提供一个类似wordpress的主题系统,用户可以在其中上传/选择其网站的主题。 问题答案: