记录flask使用模板时出现的“Internal Server Error”错误

在看《Flask Web开发实战:入门、进阶与原理解析(李辉著 )》时照着书上的代码抄了一遍,然后运行时发现一直出现以下的错误

书上的源代码如下

watchlist.html

<head>
    <meta charset="utf-8">
    <title>{{ user.username }}‘s Watchlist</title>
</head>
    <body>
        <a href="{{ url_for(‘index‘) }}">&larr; Return</a>
        <h2>{{ user.username }}</h2>
        {% if user.bio %}
            <i>{{ user.bio }}</i>
        {% else %}
            <i>This user has not provided a bio.</i>
        {% endif %}
        {# Below is the movie list (this is comment) #}
        {<h5>{{ user.username }}‘s Watchlist({{ movies|length }}):</h5>
        <ul>
            {% for movie in movies %}
                <li>{{ movie.name }} - {{ movie.year }}</li>
            {% endfor %}
        </ul>
     </body>
</html>

app.py

 1 user = {
 2     ‘username‘: ‘Grey Li‘,
 3     ‘bio‘: ‘A boy who loves movies and music.‘,
 4 }
 5
 6 movies = [
 7     {‘name‘: ‘My Neighbor Totoro‘, ‘year‘: ‘1988‘},
 8     {‘name‘: ‘Three Colours trilogy‘, ‘year‘: ‘1993‘},
 9     {‘name‘: ‘Forrest Gump‘, ‘year‘: ‘1994‘},
10     {‘name‘: ‘Perfect Blue‘, ‘year‘: ‘1997‘},
11     {‘name‘: ‘The Matrix‘, ‘year‘: ‘1999‘},
12     {‘name‘: ‘Memento‘, ‘year‘: ‘2000‘},
13     {‘name‘: ‘The Bucket list‘, ‘year‘: ‘2007‘},
14     {‘name‘: ‘Black Swan‘, ‘year‘: ‘2010‘},
15     {‘name‘: ‘Gone Girl‘, ‘year‘: ‘2014‘},
16     {‘name‘: ‘CoCo‘, ‘year‘: ‘2018‘},
17 ]
18
19 from flask import Flask,render_template,url_for
20 app = Flask(__name__)
21 @app.route(‘/watchlist‘)
22 def watchlist():
23     return render_template(‘watchlist.html‘, user=user, movies=movies)
24
25
26 @app.route(‘/‘)
27 def index():
28     return render_template(‘index.html‘)
29
30 ‘‘‘
31
32 if __name__==‘__main__‘:
33     app.run()
34 ‘‘‘

控制台还输入了“werkzeug.routing.BuildError: Could not build url for endpoint ‘index.html‘. Did you mean ‘index‘ instead?”的错误提示,看不懂

在谷歌有很多类似这样的错误提示的解决办法,但都不是我要找的。刚开始以为是在app.py中没有加上32、33行。

后来才发现应该是在watchlist中加上了 <!-- 注释--> 的内容,大概有几行吧,然后删去注释,重新 flask run 再在浏览器中打开就可以了。

所以有个疑惑,在模板中的貌似不能像在html中那样使用 <!-- 注释-->的格式了。

说明:代码源于《Flask Web开发实战:入门、进阶与原理解析(李辉著 )》一书

我个人觉得这本书挺好的,讲得详细易懂。

原文地址:https://www.cnblogs.com/Guhongying/p/10062525.html

时间: 2024-08-06 07:14:16

记录flask使用模板时出现的“Internal Server Error”错误的相关文章

php 图片上传 500 Internal Server Error 错误

写php简单上传图片时,发现200k的图片上传时报Internal Server Error错误,检查了 upload_max_filesize,及其他post_max_size.max_input_time.memory_limit. max_execution_time配置项均没有问题,后检查错误日 志:mod_fcgid: HTTP request length 138296 (so far) exceeds MaxRequestLen (131072), 发现问题所在. 原 来是fast

&lt;&lt;&lt; php程序在运行后报“internal server error”错误

上传的php程序在运行后报"internal server error"错误,检查以下两方面:1.请您检查php程序的属性是否设置为755,如果php程序的属性不是755,那么运行的时候会报"internal server error"错误,请您使用ftp软件将属性更改为755再测试.2.请您检查php程序所在的当前目录下是否有名为.htaccess的文件存在,此文件会干扰php程序的正常运行,如果发现有此文件建议您删除或者改名后再测试. <<<

redmine迁移之后,文件上传的时候报Internal Server Error错误

redmine版本升级的时候,我们需要做数据库的迁移和附件文档的迁移,当完成所有工作之后,本以为万事大吉,可是在上传附件的时候发现报Internal Server Error错误,无法完成上传工作. 如下图所示: 问题分析:打开redmine之后,查看上传附件files文件夹的读写权限,发现是权限不足导致的. 解决方案:赋予其权限即可,命令为chmod -R a+w /files ,执行即可. 执行后验证权限如下: 重新访问网站测试是否可以上传,效果如下: 完美解决!希望大家遇到问题,分析问题,

安装Destoon系统出现500 Internal Server Error错误的原因

当我们初次安装Destoon B2B网站管理系统出现"500 Internal Server Error"错误,其原因有一下几点: 解决办法一.删除根目录下.htaccess文件,如果无效,请尝试方法二: 解决办法二.对于Liunx/Unix服务器,如果不支持0777属性,可修改 根目录config.inc.php $CFG['file_mod'] = 0777; 为 $CFG['file_mod'] = 0755 ; 然后,FTP修改已经被系统自动修改为0777属性的目录和文件为07

本地wampserver的Internal Server Error错误解决方法

问题出现原因:       今天心血来潮,想换一个win8.1系统,我这个人做什么比较着急,备份完东西就做成了win8.1,所有的网站开发软件都安装好了,现在开始恢复我做的项目,因为还没有完成,当我恢复好时候,一打开出现了Internal Server Error错误,找了很多网上的教程都没有解决,没办法自己搜集了很多教程,一个一个试验,最后终于成功了,分享给大家! 问题代码|截图: Internal Server Error The server encountered an internal

org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: Internal Server Error 错误

Solr报错: { "responseHeader": { "status": 500, "QTime": 11 }, "error": { "trace": "java.lang.RuntimeException\r\n\tat org.apache.solr.search.ExtendedDismaxQParser$ExtendedDismaxConfiguration.<init>

本地wamp的Internal Server Error错误解决方法

一.本地wamp下调试url重写,加入htaccess文件后提示:500 Internal Server Error...,而删除这个文件网站又可以正常访问,其实就是没有开启url重写的功能.开启一下就可以. WAMP下htaccess出错的解决方法: 1. 打开wamp安装目录,搜一下 httpd.conf 这个文件,找到后打开: 2. 搜一下“LoadModule rewrite_modulemodules/mod_rewrite.so”,找到这一行,去掉前面的“#”: 3. 重启wamp.

php 出现 500 Internal Server Error错误问题解决

set_time_limit(0); //设置超时时间 chmod 777 filename //设置文件权限 问题根本不在这,读取数据太多,数组是很站内存的. 内存设置大些就ok了 ini_set('memory_limit', '500M'); echo memory_get_usage(); 查看占有内存.

yii2 使用ajax 验证, 报 500 Internal Server Error 错误

报错截图: 错误原因: 转换json格式写的有误 改好了就OK了