使用python的Django库开发一个简单的数据可视化网站(三)- 使用Django连接数据库mysql
使用,Django,python,开发,一个,简单,数据,可视化,网站,连接,数据库,mysql
2025-03-25 08:59:26 时间
这节课我们主要讲解的是使用Django框架连接数据库mysql,收到后台私信的朋友说让我简单说一下Django框架,这里先为大家简单介绍一下Django框架。
Django和flask是Python的两个主流网站开发工具,其中Django采用MTV设计模式,其中M代表models模型,T代表templates模板,V代表view视图。Django遵循MVC设计模式的框架,MVC是Model、View、Controller三个单词的简写,分别代表模型、视图、控制器。Django的设计非常优美:
- 对象关系的映射:ORM,ORM可以使用python设计mysql的数据表字段,可以在python直接使用命令在mysql数据库中创建数据表。
- url的分派:可以直接使用正则表达式匹配网页路由
- 模板系统:可以在框架中定义不同的子应用
- 表单处理:可以方便的生产各种表单
- cache和session:方便缓存和保持用户会话
Django作为python的主流网站开发框架,拥有非常多的优势。接下来我们开始正题。
(一)在子应用的models.py中设置数据表字段
字段名称包括id,教师名称,教师所在院系,文章题目,文章作者,来源,发表日期,引用数量和下载数量。
(二)进行数据迁移
使用python manage.py makemigrations和python manage.py migrate
数据迁移后Django会连接mysql并自动创建好数据表和字段,这就是Django ORM数据对象映射的优势。
(三)将数据导入mysql
这里我准备了一段代码,运行这段代码可以将数据导入数据库。
def get_conn():
db = pymysql.connect(host="127.0.0.1", port=3306,
user="", password="",
db="",charset="utf8")
return db
def insert(cur, sql, args):
try:
cur.execute(sql, args)
except Exception as e:
print(e)
#db.rollback()
def read_csv_to_mysql(filename):
with codecs.open(filename=filename, mode='r', encoding='utf-8') as f:
reader = csv.reader(f)
head = next(reader)
print(head)
conn = get_conn()
cur = conn.cursor()
sql = 'insert into article values(%s,%s,%s,%s,%s,%s,%s,%s,%s)'
for item in reader:
# if item[1] is None or item[1] == '': # item[1]作为唯一键,不能为null
# continue
args = tuple(item)
print(args)
insert(cur, sql=sql, args=args)
conn.commit()
cur.close()
conn.close()
if __name__ == '__main__':
read_csv_to_mysql(r"/Users/weiboning/Desktop/teacherarticle/总数据.csv")
(四)在后端视图函数中获取数据库数据
在view.py定义后端函数获取数据库的数据
这里get获取到所有的数据,使用post查询数据
(五)在前端html代码中修改获取后端获取数据
jinja2模板使用for循环可以遍历所有的数据。
(六)最终效果
这就是数据库中所有的数据和查询数据后返回的结果。
好了,就到这里了,大家有什么问题可以后台私聊我。非常感谢。
相关文章
- Python进阶27-Django 路由层
- Django的请求与响应
- Django 中使用 ajax 请求的正确姿势
- Django学习记录
- django在docker环境中断点调试
- Django学习笔记一初识Django
- Python进阶28-Django 模板层(Jinja2)
- Django如何处理URL请求
- pycharm安装包说pip版本不对_django库
- Pycharm安装django包[通俗易懂]
- pycharm django环境搭建_window10创建还原点
- 【Django | 开发】面试招聘信息网站(处理产品细节和权限&美化页面样式)
- pycharm运行环境配置_pycharm安装django
- [博客搭建] 通过用户邮箱认证来介绍 django-allauth 的使用思路
- 使用 PyCharm 远程调试 Django 程序「建议收藏」
- pycharm怎么配置django环境_pycharm环境搭建
- Django 使用 django-redis 作为缓存的正确用法,别忽略缓存的使用原则
- Django的聚合查询与原生操作
- centos7使用nginx+uwsgi部署python django项目
- django:Content-Disposition filename:日本語 pdf csv output