关注我的微信公众号:【了然知识库】,回复“python”获取python教程大礼包(一直更新中),学习更多知识
本笔记的课程链接:
2024版-零基础玩转Python Flask框架-学完可就业_哔哩哔哩_bilibili
第一课 第一个flask项目
项目目录结构:
-项目名
-static文件夹
-templates文件夹
-app.py
from flask import Flask
#使用Flask创建一个app对象,__name__代表当前app.py这个模块
#可以在出现bug时帮助快速定位
#对于寻找模板文件有一个相对路径
app=Flask(__name__)
#创建一个路由和视图函数的映射
@app.route('/'):
def hello_world():
return 'Hello world!'
if __name__== '__main__':
app.run()
第二课 配置bug、host和port
from flask import Flask
app=Flask(__name__)
@app.route('/'):
def hello_world():
return 'Hello world!'
if __name__== '__main__':
app.run()
1.debug模式
没有开启该模式,网页不会即时渲染,需要关闭程序重新运行;开启debug后可以即时渲染,只要保存即可,ctrl+s
如果开发的时候出现bug,在浏览器上就可以看到出错信息
开启:PyCharm 中选择Edit configuirations,在弹出的界面中勾选debug


另一种debug开启方式是直接在程序中修改:
app.run(debug=True)
2.host修改

主要作用:
让别的电脑访问你的flask项目

3.修改port端口号


主要的左右:防止端口被占用的情况下项目无法打开,通过修改端口解决问题
第三课 url与视图
from flask import Flask
app=Flask(__name__)
#url协议,http和https+域名+默认80端口和443端口(使用端口但不显示)+路径(代码定义)
#url与视图,即路径(path)和视图的关系
@app.route('/')
def hello_world():
return 'Hello world!'
#新增一个路径
@app.route('/profile')
def profile():
return '我是个人中心'
@app.route('/blog/list')
def blog_list():
return '我是博客列表'
if __name__== '__main__':
app.run()
@app.route的意思是在app中有一个函数route

定义有参数的url
#带参数的url:将参数固定到了path中
@app.route('/blog/<blog_id>')
def blog_detail(blog_id):
return f'你访问的博客是{blog_id}'

#/book/list:会返回第一页的数据
#/book/list?page=2 :会获取第二页的数据
#为什么同一个url可以不带参数又可以带?
#这是使用查询字符串的方式传参
from falsk import request
...
@app.route('/book/list')
def book_list():
#arguments:参数
#request.args:类字典类型
request.args.get("page",default=1,type=int)
return f"你获取的是第{page}的图书列表"
...

第四课 模板渲染
默认的为jinja2库的渲染,会在安装flask时自动安装
jinja模板放在templates文件夹中,为html文件

#app.py
from flask import Flask,render_template
app=Flask(__name__)
@app.route

1760

被折叠的 条评论
为什么被折叠?



