Flask入门教程

这篇具有很好参考价值的文章主要介绍了Flask入门教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Flask入门教程,flask,python,后端,图形渲染,人工智能



一、前言

Flask 是一个使用 Python 编写的轻量级 Web 应用框架。它基于 Werkzeug WSGI 工具箱和 Jinja2 模板引擎,提供了简单易用的 API,可以帮助开发者快速构建 Web 应用程序。Flask 框架具有灵活性和可扩展性,可以根据需要添加各种插件和扩展,例如数据库集成、表单验证、用户认证等。Flask 框架还提供了丰富的文档和社区支持,使得开发者可以轻松地学习和使用它。

4.png
项目源码:flask-course

二、资源收集

2.1 在线教程

官网
GitHub - pallets/flask: The Python micro framework for building web applications.

中文教程
Flask 入门教程
使用版本:

  • flask 2.1.3
  • python > 3.6

2.2 环境配置

Flask–如何在pycharm中导入并运行flask项目_此生小会的博客-CSDN博客
pycharm设置保存时自动格式化代码(Auto Reformat Code)_pycharm保存自动格式化_粒米LALA的博客-CSDN博客
新手必会,pycharm的调试功能(史上最详篇)

三、入门

Flask 入门教程 - 第 2 章:Hello, Flask!
Flask 入门教程 - 第 3 章:模板

四、静态文件

Flask 入门教程 - 第 4 章:静态文件

五、数据库

虚拟数据生成:https://github.com/joke2k/faker
SQLAlchemy
SQLAlchemy是一个Python库,用于在Python应用程序中使用关系型数据库。它提供了一组工具和API,使得在Python中使用关系型数据库变得更加容易和灵活。
SQLAlchemy的主要特点包括:

  • ORM支持:SQLAlchemy提供了一个ORM(Object-Relational Mapping)框架,使得在Python中使用关系型数据库变得更加容易和直观。
  • 多数据库支持:SQLAlchemy支持多种关系型数据库,包括MySQL、PostgreSQL、Oracle、Microsoft SQL Server等。
  • 事务支持:SQLAlchemy支持完整的事务性,包括ACID属性(原子性、一致性、隔离性和持久性)。
  • 数据库连接池:SQLAlchemy提供了一个数据库连接池,可以管理数据库连接的创建和销毁,从而提高应用程序的性能和可伸缩性。
  • SQL表达式语言:SQLAlchemy提供了一个SQL表达式语言,使得在Python中编写SQL语句变得更加容易和安全。

使用SQLAlchemy,您可以在Python应用程序中轻松地执行各种数据库操作,包括创建、读取、更新和删除数据。您可以使用ORM框架来映射Python对象和数据库表,从而使得在Python中操作数据库变得更加直观和易于维护。

六、模板优化

Flask 入门教程 - 第 6 章:模板优化

核心:模板的继承

七、表单

Flask 入门教程 - 第 7 章:表单

  • 默认和入口文件放在同一个文件夹下面
  • 名称为templates

八、用户认证

Flask 入门教程 - 第 8 章:用户认证

8.1 werkzeug

  • Werkzeug 是一个 Python Web 工具库,提供了一些用于构建 Web 应用程序的基础组件,包括路由、请求和响应对象、中间件、调试工具等。
  • Werkzeug 的设计目标是提供简单、灵活、可扩展的工具,以便开发人员可以根据自己的需求构建定制化的 Web 应用程序。

8.2 flask_login

Flask-Login 是一个 Flask 扩展,用于处理用户认证和会话管理。下面是一些 Flask-Login 的特点:

  • 提供了一组用于处理用户登录、注销、记住用户等功能的工具和约定。
  • 轻松地集成到 Flask 应用程序中,只需要安装扩展并进行简单的配置即可。
  • 支持多种用户模型和认证方法,可以根据应用程序的需求进行定制。
  • 处理用户会话和 cookie,以便在用户访问应用程序时自动登录或注销。
  • 处理用户权限和角色,以便在应用程序中实现访问控制和权限管理。
  • 处理用户会话的保护和安全,以防止会话劫持和其他安全问题。
  • 处理用户密码的加密和验证,以确保用户密码的安全性。
  • 处理用户记住登录状态的功能,以便在用户关闭浏览器后仍然保持登录状态。

九、代码测试

9.1 unittest

unittest教程_w3cschool

  • unittest 是 Python 标准库中的一个单元测试框架,用于编写和运行单元测试。
  • 单元测试是一种测试方法,用于测试代码中的最小可测试单元,通常是函数或方法。
  • unittest 提供了一组用于编写和运行单元测试的工具和约定,包括测试用例、测试套件、测试运行器等。
  • 使用 unittest 可以帮助开发人员编写更可靠、更健壮的代码,并确保代码的正确性和稳定性。
  • unittest 还支持测试覆盖率、测试报告等高级功能,可以帮助开发人员更好地了解代码的测试情况。

9.2 coverage

1.png

2.png
Python代码覆盖率工具coverage使用教程 - ☆星空物语☆ - 博客园

  • 可以帮助开发人员了解哪些代码被测试覆盖,哪些代码没有被测试覆盖,以及测试用例的质量和完整性。
  • 可以生成各种格式的测试覆盖率报告,包括 HTML 报告、XML 报告、JSON 报告等。
  • 可以与多种测试框架集成,包括 unittest、pytest、nose 等。
  • 可以计算语句、分支、函数和行覆盖率等多种覆盖率指标。
  • 可以忽略指定的文件、目录、代码行等,以便更精确地计算覆盖率。
  • 可以在命令行或配置文件中设置各种选项,以便更灵活地使用。
  • 是一个开源工具,可以免费使用,并且有活跃的社区支持和维护。

十、代码重构

Flask 入门教程 - 第 10 章:组织你的代码

python中遇到循环import即circular import的问题原理剖析及解决方案_幸福清风的博客-CSDN博客

在 Python 中,循环导入通常是指两个或多个模块相互导入,导致无法解析模块依赖关系的问题。这种情况通常会导致 ImportError 异常或其他奇怪的行为。为了避免循环导入,可以尝试以下几种方法:文章来源地址https://www.toymoban.com/news/detail-670208.html

  1. 重构代码,将循环依赖关系消除。
  2. 将导入语句移动到函数内部,以延迟导入。
  3. 将导入语句移动到模块底部,以确保所有依赖项都已定义。
  4. 使用绝对导入语法,以避免相对导入语法的问题。

到了这里,关于Flask入门教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Flask入门教程(非常详细),从零基础入门到精通,看完这一篇就够了

    目录 Flask入门 运行方式 URL与函数的映射(动态路由) PostMan的使用 查询参数的获取 上传文件 其它参数 url_for 函数 响应-重定向 响应-响应内容 响应-自定义响应 Flask模板 模板介绍 模板的使用 模板-传参 模板使用url_for函数 过滤器介绍 Jinja模板自带过滤器 流程控制-选择结构 流程

    2024年02月05日
    浏览(75)
  • 数据可视化神器!Matplotlib Python教程 | 从入门到精通绘制各种类型的图形和保存图形

    大家好,我是爱吃熊掌的鱼,今天我要给大家带来一篇有趣开朗的Matplotlib Python教程。Matplotlib是Python中最流行的数据可视化库之一,它可以帮助我们将数据转化为易于理解的图表和图形。无论你是初学者还是专业人士,Matplotlib都是一个非常有用的工具。让我们开始吧! 在开

    2023年04月21日
    浏览(46)
  • Python - flask后端开发笔记

    ​ Flask入门 有一篇很全面的博客可以参考:Python Flask Web 框架入门 跨域问题处理 文件发送 ​

    2024年02月07日
    浏览(64)
  • Python Flask 后端向前端推送信息——轮询、SSE、WebSocket

    后端向前端推送信息,通知任务完成 轮询 SSE WebSocket 请求方式 HTTP HTTP TCP长连接 触发方式 轮询 事件 事件 优点 实现简单易兼容 实现简单开发成本低 全双工通信,开销小,安全,可扩展 缺点 消耗较大 不兼容IE 传输数据需二次解析,开发成本大 适用场景 服务端向客户端单向

    2023年04月19日
    浏览(82)
  • 【python】flask模板渲染引擎Jinja2,通过后端数据渲染前端页面

    ✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN新星创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开

    2024年04月11日
    浏览(53)
  • 大白话说Python+Flask入门(六)Flask SQLAlchemy操作mysql数据库

    这篇文章被搁置真的太久了,不知不觉拖到了周三了,当然,也算跟falsk系列说再见的时候,真没什么好神秘的,就是个数据库操作,就大家都知道的 CRUD 吧。 1、Flask SQLAlchemy简介 Flask SQLAlchemy 是基于 Flask web 框架和 SQLAlchemy ORM (对象关系映射)的工具。它旨在为 Flask web 应用

    2024年02月05日
    浏览(65)
  • Python-flask项目入门

    一、flask对于简单搭建一个基于python语言-的web项目非常简单 二、项目目录 示例代码 git路径  三、代码介绍 1、安装pip依赖 2.配置数据源 config.py 3、引用orm框架 访问数据库 /mapper/exts.py 4、启动文件 app.py 5、数据库操作 通过Flask提供orm框架对数据库进行操作 5.1增加 5.2删除 5.3修

    2024年02月14日
    浏览(35)
  • 大白话说Python+Flask入门(二)

    笔者技术真的很一般,也许只靠着 笨鸟先飞的这种傻瓜坚持 ,才能在互联网行业侥幸的 生存下来 吧! 为什么这么说? 我曾不止一次在某群,看到说我写的东西一点技术含量都没有,而且很没营养,换作一年前的我,也许会怼回去, 现在的话,我只是看到了,完事忘记了。

    2024年02月05日
    浏览(52)
  • 大白话说Python+Flask入门(三)

    今天状态很不好,我发现学这部分知识的时候,会出现溜号或者注意力无法集中的情况。 我能想到的是,大概率是这部分知识,应该是超出了我现在的水平了,也就是说我存在知识断层了,整体感觉真的是一知半解。 那有同学会问了,那你能说明白吗? 我理解的肯定能呀,

    2024年02月05日
    浏览(45)
  • 大白话说Python+Flask入门(一)

    技术这东西就得用,不用就会忘,之前写博客感觉就是给自己记笔记用,还有大部分,估计睡在语雀里都落灰了,哈哈! 在Python领域,我觉得我还是算个小白吧,会写讲不明白,所以我决定想做一件事,先搞下flask这部分教程,看看能给大家说明白吗,真的感觉和 Java 有很大

    2024年02月05日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包