0
点赞
收藏
分享

微信扫一扫

python Web开发之flask框架展示电影列表

树下的老石头 2022-11-17 阅读 139


在之前的学习中,博主通过爬虫获取了豆瓣影片的信息,并将数据插入到了MySQL数据库中,接下来我们接触到了python的第二个应用领域——Web开发

python的应用领域

python Web开发之flask框架展示电影列表_python


首先,我们先来了解一下flask

Flask是一个轻量级的可定制框架,使用Python语言编写,较其他同类型框架更为灵活、轻便、安全且容易上手。它可以很好地结合MVC模式进行开发,开发人员分工合作,小型团队在短时间内就可以完成功能丰富的中小型网站或Web服务的实现。另外,Flask还有很强的定制性,用户可以根据自己的需求来添加相应的功能,在保持核心功能简单的同时实现功能的丰富与扩展,其强大的插件库可以让用户实现个性化的网站定制,开发出功能强大的网站。

​​flask官方文档​​ 博主使用的编译器是pycharm(社区版),在这里也给大家解答一个疑惑,博主在这里也困扰了许久

这是博主看到其他人创建flask框架项目的样子

python Web开发之flask框架展示电影列表_html_02


这是博主自己创建项目时的样子

python Web开发之flask框架展示电影列表_python_03


当时还在意难平,以为是缺少了什么配置,毕竟python开发过程中遇到了需要重新添加库的情况,在百度了下后,发现在从一开始便错付了,这种差距是与生俱来的,不是后天努力就可以拉近的。

算了算了,还是另寻他法吧

不能通过File---->New Project直接创建,这种方法适用于专业版
社区版需要自己手写添加:
像往常一样,创建好一个空项目(File---->New Project),在项目根目录下新建app.py文件,在该文件内输入下列代码:

from flask import Flask
app = Flask(__name__) #这是两条短线

@app.route('/')
def hello_world():
return 'Hello World!'

if __name__ =='__main__':
app.run( )

在根目录新建名为static的Python Package,新建完成后删除其下自动生成的__init__.py文件
按同样的方式新建templates 的Python Package

python Web开发之flask框架展示电影列表_python_04


项目创建完成户便是需要将我们的数据获取到了,先前我们已对数据库操作方法做了封装,在原来基础上,我们参照javaweb开发的格式进行了命名

FilmDao.py

from flask_study.DBUtil import *
db=MysqlClass()
def select_movice():
sql = "select * from movice"
datas = db.select_all(sql)
return datas

这个返回的结果是字典封装的列表

格式如下:

python Web开发之flask框架展示电影列表_python_05


那么接下来便是配置flask的路由进行响应了

from flask import Flask
from flask import render_template
from flask_study.FilmDao import *
app = Flask(__name__)
@app.route("/")
def getFilms():
datas=select_movice()
return render_template('index.html', films=datas)#这个方法是规定好的,去template文件下找index.html文件,并携带参数
if __name__ == '__main__':
app.run() #默认执行

python Web开发之flask框架展示电影列表_flask_06

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{% for data in films %}
<img src={{ data['cover'] }} width="300" height="500">
{% endfor %}
</body>
</html>

这样便把数据显示出来了,但这只能显示出图片,博主给优化了下界面,如图所示:

python Web开发之flask框架展示电影列表_python_07


至此,通过flask框架查询数据库并显示在html页面的功能便实现了。

码字不易,给个赞呗!


举报

相关推荐

0 条评论