当前位置:   article > 正文

弹射起步——pythonweb开发Flask框架,前端原生+Flask后端框架+mysql数据库实战(附带小案例)_python flask 前端

python flask 前端

 大家好,我是csdn的博主:lqj_本人

这是我的个人博客主页:

lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主lqj_本人擅长微信小程序,前端,python,等方面的知识https://blog.csdn.net/lbcyllqj?spm=1011.2415.3001.5343哔哩哔哩欢迎关注:小淼Develop

小淼Develop的个人空间-小淼Develop个人主页-哔哩哔哩视频

本篇文章主要讲述:快速上手,pythonweb开发Flask框架

目录

python适合做web应用开发

Flask框架

小案例的文件结构

 mysql数据库表结构

后端代码实现

前端原生代码实现

小案例前后端交互效果:


python适合做web应用开发

一是易于学习:Python 是初学者最流行的语言,与 Java 和 C ++ 等其他语言相比,你可以编写更少的代码,减少出错,从而提升效率。不仅如此,它还具有较低的进入门槛,因为它与日常语言相对更相似,可以轻松地理解代码。

二是具有丰富的生态系统和库:Python 提供了广泛的库工具和包,可以访问许多预先编写的代码,从而缩短了应用程序的开发时间。例如,你可以使用Numpy 和 Pandas 进行数学分析,使用 Pygal 进行图表分析,并使用 SLQALchemy 进行可组合查询。Python 还提供了惊人的 Web 框架,例如Django 和 Flask,后面部分深入探讨。

三是快速原型制作:与其他编程语言相比,Python 可以节省大量的时间来构建项目,你的想法可以更快地实现,从而可以更快的获得反馈并快速迭代。这种高效的开发使 Python 特别适合那些可以更快进入市场以获得竞争优势的创业公司。

四是广泛流行:Python 是世界上最受欢迎的语言之一,拥有来自世界各地的社区贡献,几乎所有的技术问题通过搜索引擎都可以很快找到解决方案。Python 本身也在不断更新以提供新功能和库,同时还提供了出色的文档和社区支持。特别是对于新开发人员,Python 提供了广泛的支持和框架。

Flask框架

Flask 被认为是一个微框架,是一个简约的 Web 框架。它不那么“包含电池”,这意味着它缺少像 Django 这样的全栈框架提供的许多特性和功能,例如 Web 模板引擎,帐户授权和身份验证。其主要特色如下:

•一个轻量级、微框架•学习成本相对较低,入门快•支持 JinJa2 模版引擎•继Django模板语言之后的现代模板语言

Flask 极简且轻巧,这意味着您可以在编写代码时添加所需的扩展和库。Flask背后的理念是,它仅提供构建应用程序所需的组件,因此开发人员具有很大的灵活性和控制力。Flask 还是一种流行且功能强大的 Web 框架,已被 Netflix,Linkedin 和 Uber 等大公司使用。

小案例的文件结构

 mysql数据库表结构

后端代码实现

简要说明:调用Flask框架库、pymysql第三方库、request模块库、render_template。

实例化Flask对象:

app = Flask(__name__)

/add/user该页面用于添加数据到mysql数据库的表中;

/show/user该页面用于实时渲染出mysql数据库中数据表的数据;

request.method == "GET"用于指定add/user页面,智能通过"GET"请求方式发送请求;
render_template用于连接到前端html原生页面;
  1. from flask import Flask, render_template, request
  2. import pymysql
  3. app = Flask(__name__)
  4. @app.route("/add/user",methods=["GET","POST"])
  5. def add_user():
  6. if request.method == "GET":
  7. return render_template("add_user.html")
  8. # print(request.form)
  9. username = request.form.get("user")
  10. password = request.form.get("pwd")
  11. mobile = request.form.get("mobile")
  12. #1.连接mysql
  13. conn = pymysql.connect(host="你自己的ip", port=你自己的端口, user='root', password='你自己的mysql密码', charset='utf8', db='unicom')
  14. cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
  15. #2.执行sql
  16. sql = "insert into admin(username,password,mobile) values (%s,%s,%s)"
  17. cursor.execute(sql, [username, password, mobile])
  18. conn.commit()
  19. #3.关闭连接
  20. cursor.close()
  21. conn.close()
  22. return "xxx"
  23. @app.route("/show/user")
  24. def show_user():
  25. #连接mysql
  26. conn = pymysql.connect(host="你自己的ip", port=你自己的端口, user='root', password='你自己的mysql密码', charset='utf8', db='unicom')
  27. cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
  28. #执行sql
  29. sql = "select * from admin"
  30. cursor.execute(sql)
  31. data_list = cursor.fetchall()
  32. # 3.关闭、
  33. cursor.close()
  34. conn.close()
  35. # print(data_list)
  36. return render_template('show_user.html',data_list=data_list)
  37. if __name__ == '__main__':
  38. app.run()

前端原生代码实现

/add/user页面:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <h1>添加用户</h1>
  9. <form method="post" action="/add/user">
  10. <input type="text" name="user" placeholder="用户名">
  11. <input type="text" name="pwd" placeholder="密码">
  12. <input type="text" name="mobile" placeholder="手机号">
  13. <input type="submit" value="提 交">
  14. </form>
  15. </body>
  16. </html>

/show/user页面:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <style>
  7. .title{
  8. display: flex;
  9. flex-direction: row;
  10. justify-content: space-around;
  11. }
  12. h1{
  13. color: orange;
  14. }
  15. .box1{
  16. display: flex;
  17. flex-direction: row;
  18. justify-content: space-around;
  19. }
  20. table{
  21. border: bisque 1px double;
  22. height: 300px;
  23. }
  24. td{
  25. width: 200px;
  26. border: bisque 1px double;
  27. background: #238a8e;
  28. }
  29. th{
  30. border: orangered 1px double;
  31. background: #a07c5f;
  32. }
  33. body{
  34. background: cornflowerblue;
  35. }
  36. </style>
  37. </head>
  38. <body>
  39. <div class="title">
  40. <h1>用户列表</h1>
  41. </div>
  42. <div class="box1">
  43. <table>
  44. <thead>
  45. <tr>
  46. <th>ID</th>
  47. <th>账户</th>
  48. <th>密码</th>
  49. <th>手机号</th>
  50. </tr>
  51. </thead>
  52. <thead>
  53. {% for item in data_list%}
  54. <tr class="box2">
  55. <td>{{item.id}}</td>
  56. <td>{{item.username}}</td>
  57. <td>{{item.password}}</td>
  58. <td>{{item.mobile}}</td>
  59. </tr>
  60. {% endfor%}
  61. </thead>
  62. </table>
  63. </div>
  64. </body>
  65. </html>

小案例前后端交互效果:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/51383
推荐阅读
相关标签
  

闽ICP备14008679号