Flask基础学习

1.debug、host、port 模式修改

  1. debug模式

默认debug模式是off,在修改代码调试过程中需要暂停重启使用,这时可修改on模式解决。

同时在debug模式开启下可看到出错信息。

下面有关于Pycharm社区版和专业版修改debug模式的区别

专业版

社区版:

复制代码
if __name__ == '__main__':
    app.run(debug=True)

对比如下

host、port模式修改:

host模式的修改可使同一网络的其他电脑访问本IP,port模式的修改避免同一端口被程序占用。

复制代码
专业版编辑,社区版同上使用app.run(port='***',host='***')

运行结果:

url文件的配置

  1. 使用路由传值方式,语法:<?> 直接传给函数值使用

    @app.route('/book/')
    def hello_world(id):
    return 'Hello {}!'.format(id)

  2. 查询字符串方式传值,语法:request.args.get(...)

    @app.route('/book/list')
    def book_list():
    page = request.args.get('page',default=1,type=int)
    return 'this page value: {}!'.format(page)

  1. jinja2模板使用:

    from flask import Flask,request,render_template

    app = Flask(name)

    @app.route('/book/')
    def hello_world(id):
    # return 'Hello {}!'.format(id)
    return render_template('index.html',id = id,username ='pass')

运行结果:

html 的语法:{{ ... }}

复制代码
    <title>当前页ID: {{ page }},用户名:{{ username }}</title>

过滤器使用 语法:{{ xxx | length }}

  • {{ xxx | list }}
  • {{ xxx | lower }}
  • {{ xxx | safe }}
  • {{ xxx | reverse }}

自定义过滤器使用

复制代码
from datetime import datetime
def datetime_format(value,format= '%Y-%d-%m %H:%M'):
    return value.strftime(format)

app = Flask(__name__)
app.add_template_filter(datetime_format,'dformat')

# 绑定过滤器名称
@app.route('/book/list')
def book_list():
    mytime = datetime.now()
    print(mytime)
    return render_template('index.html',mytime=mytime)

# web 应用
<title>{{ mytime|dformat }}</title>

if for 模板应用

语法:

复制代码
{{% if xxx > 10 %}}

{{% elif xxx==10 %}}

{{% else %}}

{{% endif %}}

{{% for x in xxx %}}

{{% endfor %}}

模板继承语法

复制代码
{% extends 'xxx.html' %}

{% block xxx %}

{% endblock %}

静态文件加载

语法:

复制代码
<img src="{{ url_for('static',filename="images/test.png") }}" alt ='pic test'>
相关推荐
数据开发 Yang 同学7 分钟前
【Python 并发编程】线程、进程、协程、同步/异步一次说清
python
leeyi9 分钟前
把规则搬回家:三个 BC 的贫血→充血重构实录(第103篇)
后端
程序员杰哥13 分钟前
如何做接口测试?
自动化测试·python·测试工具·职场和发展·测试用例·接口测试·postman
weixin1997010801617 分钟前
[特殊字符]《从0到1:闲鱼开放平台授权登录 + AccessToken 刷新 + 聚石塔部署完整链路》(附Python源码)
java·数据库·python
STQY燊桐启元(深圳)电子科技34 分钟前
太阳能追踪设备散热优化,相变陶瓷片解决全日照高温积温故障
经验分享·笔记·pcm
布局呆星36 分钟前
RAG从0~1,初入~优化
python
kakawzw40 分钟前
Netty源码笔记
java·服务器·后端
明月_清风41 分钟前
算法时间复杂度:给小白的一堂"算快慢"课
后端·算法
王志来1379447300843 分钟前
场景驱动选型:4U工控机箱如何匹配多元化工业需求
大数据·人工智能·python
Nturmoils1 小时前
内网穿透原来这么简单:Natapp 从注册到公网访问完整教程
后端