文章分类 - flask
介绍flask使用过程中的一些细节
摘要:静态文件的配置 Web应用中会出现大量的静态文件来使得网页更加生动美观。类似于CSS样式文件、JavaScript脚本文件、图片文件、字体文件等静态资源。在Jinja中加载静态文件非常简单,只需要通过url_for全局函数就可以实现,看以下代码: <link href="{{ url_for('st
阅读全文
摘要:数据类型和运算符 一、数据类型: Jinja支持许多数据类型,包括:字符串、整型、浮点型、列表、元组、字典、True/False。 二、运算符: +号运算符:可以完成数字相加,字符串相加,列表相加。但是并不推荐使用+运算符来操作字符串,字符串相加应该使用~运算符。 -号运算符:只能针对两个数字相减。
阅读全文
摘要:转义 转义的概念是,在模板渲染字符串的时候,字符串有可能包括一些非常危险的字符比如<、>等,这些字符会破坏掉原来HTML标签的结构,更严重的可能会发生XSS跨域脚本攻击,因此如果碰到<、>这些字符的时候,应该转义成HTML能正确表示这些字符的写法,比如>在HTML中应该用<来表示等。 但是Fl
阅读全文
摘要:模版继承 Flask中的模板可以继承,通过继承可以把模板中许多重复出现的元素抽取出来,放在父模板中,并且父模板通过定义block给子模板开一个口,子模板根据需要,再实现这个block,假设现在有一个base.html这个父模板,代码如下: <!DOCTYPE html> <html lang="en
阅读全文
摘要:include和set语句 一、include语句: include语句可以把一个模板引入到另外一个模板中,类似于把一个模板的代码copy到另外一个模板的指定位置,看以下例子: {% include 'header.html' %} 主体内容 {% include 'footer.html' %}
阅读全文
摘要:宏和import语句 一、宏: 模板中的宏跟python中的函数类似,可以传递参数,但是不能有返回值,可以将一些经常用到的代码片段放到宏中,然后把一些不固定的值抽取出来当成一个变量,以下将用一个例子来进行解释: {% macro input(name, value='', type='text')
阅读全文
摘要:测试器 测试器主要用来判断一个值是否满足某种类型,并且这种类型一般通过普通的if判断是有很大的挑战的。语法是:if...is...,先来简单的看个例子: {% if variable is escaped%} value of variable: {{ escaped }} {% else %} v
阅读全文
摘要:控制语句 所有的控制语句都是放在{% ... %}中,并且有一个语句{% endxxx %}来进行结束,Jinja中常用的控制语句有if/for..in..,现对他们进行讲解: if:if语句和python中的类似,可以使用>,<,<=,>=,==,!=来进行判断,也可以通过and,or,not,(
阅读全文
摘要:Jinja2模版过滤器 过滤器是通过管道符号(|)进行使用的,例如:{{ name|length }},将返回name的长度。过滤器相当于是一个函数,把当前的变量传入到过滤器中,然后过滤器根据自己的功能,再返回相应的值,之后再将结果渲染到页面中。Jinja2中内置了许多过滤器,在这里可以看到所有的过
阅读全文
摘要:Jinja2模版概述 一、概要: 先看一个简单例子: 1. <html lang="en"> 2. <head> 3. <title>My Webpage</title> 4. </head> 5. <body> 6. <ul id="navigation"> 7. {% for item in n
阅读全文
摘要:模板简介: 模板是一个web开发必备的模块。因为我们在渲染一个网页的时候,并不是只渲染一个纯文本字符串,而是需要渲染一个有富文本标签的页面。这时候我们就需要使用模板了。在Flask中,配套的模板是Jinja2,Jinja2的作者也是Flask的作者。这个模板非常的强大,并且执行效率高。以下对Jinj
阅读全文
摘要:URL与视图 #一、URL与函数的映射: 从之前的helloworld.py文件中,我们已经看到,一个URL要与执行函数进行映射,使用的是@app.route装饰器。@app.route装饰器中,可以指定URL的规则来进行更加详细的映射,比如现在要映射一个文章详情的URL,文章详情的URL是/art
阅读全文
摘要:项目配置 一、设置为DEBUG模式: 默认情况下flask不会开启DEBUG模式,开启DEBUG模式后,flask会在每次保存代码的时候自动的重新载入代码,并且如果代码有错误,会在终端进行提示。 如果一切正常,会在终端打印以下信息: * Restarting with stat * Debugger
阅读全文
摘要:Flask简介: flask是一款非常流行的Python Web框架,出生于2010年,作者是Armin Ronacher,本来这个项目只是作者在愚人节的一个玩笑,后来由于非常受欢迎,进而成为一个正式的项目。 flask自2010年发布第一个版本以来,大受欢迎,深得开发者的喜爱,目前在Github上
阅读全文
摘要:flask接口书写--flask+gunicorn+nginx+supervisor部署接口 作者: elfin 本文参考[部分转载]:迷途小书童 Top Bottom 前言 Flask框架内部实现了一个简易的Web服务器,因此在之前的教程中,我们并没有去单独安装Web服务器,但是如果项目要在生产环
阅读全文
摘要:flask接口书写--前端标题及其图标控制 作者: elfin Top Bottom 1、在html文件中定制Title 1.1 在head中的title标签中输入title名 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"
阅读全文
摘要:flask接口书写--app配置信息 作者: elfin Top Bottom 1、常用config配置 我的常用配置如下: app = Flask(__name__, template_folder='../templates') app.config["JSON_AS_ASCII"] = Fal
阅读全文
摘要:flask实现客户端上传图片与base64编码转换 参考链接:https://blog.csdn.net/weixin_36380516/article/details/80347192 测试代码: #!/usr/bin/python3 # -*- coding:utf-8 -*- # Author
阅读全文
摘要:jinja2.exceptions.TemplateNotFound 报错处理 一、检查模板文件夹是否正确 在项目中检查模板templates是否书写正确。 二、 检查模板路径 你的templates放置位置是可以多样的,这样flask无法知道在哪里查找,实际上它默认在我们的当前目录下查找,所以你可
阅读全文
摘要:不同路径下导入自己的文件 一、错误示范 在测试项目内。目录结构如下: 在这里,假设我们想在utils/app_loadimg中使用test/test_import.py中的pass_test变量 测试代码如下: # test/test_import.py代码 pass_test = "测试成功" #
阅读全文