Flask怎么用?手把手教你从零开始搭建第一个Web应用!
说实话,我刚接触Python Web开发那会儿,真的是被Django吓到了——一大堆概念、目录结构、配置文件……头都大了好吗!后来朋友跟我说:“你先试试Flask吧,轻量级,上手快。”结果我一试,哇,真香!今天就来聊聊Flask怎么用,给还在门口徘徊的朋友们一点参考。

Flask到底是个啥?
Flask就是一个用Python写的微型Web框架,它不像Django那样“什么都给你准备好”,而是只给你最核心的东西,剩下的你想装啥装啥,就像吃火锅,Django是套餐,Flask是单点——自由度高,但也意味着你得自己动手,不过别怕,真的没你想的那么难!
第一步:安装Flask
这个超简单,打开终端,一行命令搞定:
pip install flask
对,就这么easy~ 安装完之后,你可以pip show flask确认一下版本,心里有个数。
第二步:写一个最小的Flask应用
来来来,创建一个叫app.py的文件,然后写下面这几行代码:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello, Flask!'
if __name__ == '__main__':
app.run(debug=True)
然后运行python app.py,打开浏览器访问http://127.0.0.1:5000,你就能看到“Hello, Flask!”了!是不是超有成就感?我第一次跑通的时候,兴奋得跟什么似的哈哈哈。
第三步:理解路由和视图函数
Flask怎么用的核心,其实就是路由这个概念,你看上面那个@app.route('/'),就是在告诉Flask:“当有人访问根路径的时候,执行下面的hello()函数。”那个函数就叫视图函数。
你也可以搞多个路由,
@app.route('/about')
def about():
return '这是关于页面'
@app.route('/user/<name>')
def user(name):
return f'你好,{name}!'
看到没?<name>是动态参数,访问/user/小明就会返回“你好,小明!”——是不是很灵活?
第四步:模板渲染,让页面好看点
光返回字符串肯定不够用啊,咱们得用HTML,Flask自带Jinja2模板引擎,用起来贼方便,先在项目目录下建一个templates文件夹,然后写个index.html:
<!DOCTYPE html>
<html>
<head>{{ title }}</title>
</head>
<body>
<h1>欢迎来到{{ title }}</h1>
<p>今天是{{ date }}</p>
</body>
</html>
然后在app.py里这么写:
from flask import render_template
@app.route('/index')
def index():
return render_template('index.html', title='我的网站', date='2024年')
刷新页面,一个像模像样的网页就出来了!是不是有点小激动?
第五步:处理表单和请求
Web开发哪能少了表单呢?Flask处理POST请求也很简单:
from flask import request
@app.route('/login', methods=['GET', 'POST'])
def login():
if request.method == 'POST':
username = request.form['username']
return f'欢迎回来,{username}!'
return render_template('login.html')
记住啊,methods参数一定要写,不然默认只接受GET请求,POST就会报405错误,这个坑我踩过,别问我怎么知道的😭
最后唠两句
其实Flask怎么用这个问题,说到底就是:装好→写路由→写视图→渲染模板→处理请求,一步步来,别急,Flask的魅力就在于它的简洁和灵活,你可以从小项目开始,慢慢加扩展,比如数据库用Flask-SQLAlchemy,表单用Flask-WTF,用户登录用Flask-Login……
呢,别怕,动手写就完事了!遇到报错就查文档、搜Stack Overflow,社区资源超级丰富,相信我,用不了几天,你就能用Flask搭出一个像样的小网站了,加油哦~