位置: 编程技术 - 正文

一个基于flask的web应用诞生(1)(flask开发实例)

编辑:rootadmin

推荐整理分享一个基于flask的web应用诞生(1)(flask开发实例),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:flask基础,flask完整项目实例,flask 示例,flask例程,基于flask框架,flask例程,基于flask的开源项目,flask基础,内容如对您有帮助,希望把文章链接给更多的朋友!

基于flask的web应用的诞生,供大家参考,具体内容如下

Flask是一个非常优秀的web框架,它最大的特点就是保持一个简单而易于扩展的小核心,其他的都有用户自己掌握,并且方便替换,甚至,你可以在社区看到众多开源的,可直接用于生产环境下的扩展。到目前为止,我相信关于他的介绍以及非常的多,就算cnblog中,随便一搜也会有很多内容,但还是抛砖引玉,就当是一个自我的总结

部署环境

安装python

首先,当然是安装python环境,去官网来下载最新的环境(我选择最新的3.6版本)

然后一路下一步即可,注意记录或选择一下安装路径。

环境变量

接下来配置环境变量与java几乎一样,path后;.;输入python的安装路径,然后再次;,;输入python目录下的Scripts文件夹,已使用py自带的一些工具(如pip)

安装flask

配置完成pip后,安装flask就很简单了,输入cmd进入控制台,然后输入如下命令即可:

pip3.6 install flask

开发工具

工欲善其事必先利其器,开发工具的选择很重要,我选择的是pycharm,也可从官网下载,以及请大家使ji用huo正fang版shi

开始开发

首先,打开pycharm,创建一个Pure Python项目:

项目创建好之后,有的也仅仅是一个空项目,还有创建一个py文件已进行开发,在项目文件夹下右键new-->python file 然后取一个名字,我取得名字为default,将在目录文件夹下创建default.py文件。

flask初探

在此文件上输入代码(假设安装flask已经成功):

这是可将cmd控制台的目录切换至项目目录,输入命令:

python default.py

导入Flask类后,运行脚本时会自动创建WSGI程序

如图显示即为正确:

根据提示,此时在浏览器中输入flask的默认地址,显示如下:

因为现在还没有任何页面,所有访问任何地址均为

说明debug=true代表运行在调试模式,调试模式绝对不能用于生产环境!!!

路由

下面为此应用创建一个默认路由,flask使用装饰器为路由配置:

此时访问,页面如下:

输出return的内容,而此时的控制台显示:

一个基于flask的web应用诞生(1)(flask开发实例)

状态码为,不再为

这里的装饰器暂时可以理解为java中的注解,以后再详细讨论,同时这种路由的使用方式也可以暂时理解为j2ee中servlet的注解式路由方式。

带参路由

同时flask也支持带参路由:

在浏览器中输入:

default import app

然后回车,此时可以在命令行中使用app对象,输入:

app.url_map

我的显示如下:

可以看到,使用一个map存储了此对象下的所有路由,并从内容可以看到 全是get方式,注意其中的static,是存放的静态文件,如图片,顺便提一下,这也体现了flask的一个特点,即它有众多的配置选项,但基本上都在初始状态下有个明确的默认值,比如模板在templates中,图片在static中,虽然这个配置可以修改,但不建议这么做,尤其是刚开始的时候。

from default import app这行代码代表了从default对象中导入app,并在之下可以直接使用app,同样的还有之前的代码 from flask import Flask

python中有两种导入方式,import直接导入和from ... import导入,具体区别可查看py基本语法

如果想让路由为post方式,也很简单:

即可

请求上下文

flask还有请求上下文对象,即request,如:

在控制台输入exit()后,继续输入python default.py进入服务器

此时在浏览器中输入url:

约等于application g 一个用于临时存储的对象 约等于viewbagrequest 与servlet或asp.net中含义大体相同session 与servlet或asp.net中含义大体相同

响应

flask响应可以使用make_response对象,用法与java servlet中的用法类似:

此代码的内容为在响应的时候设置cookie在浏览器中输入地址:

world,但是可以查看浏览器,发现响应内容已经存入浏览器的cookie中 如图:

其他常用功能:跳转

在web开发中,经常会遇到直接跳转的情况,flask中也提供了redirect方法来实现:

此时访问将直接跳转至百度

其他常用功能:响应码

普通响应码可直接在return的返回字符串后使用,如:

访问结果如下:

可以看到,虽然此时页面显示内容不变,但是响应码为

错误码flask也提供了一个专有的函数:

此代码的功能是当name的值为test是,返回错误码为,注意此时页面不会显示内容,因为此时程序不由代码控制,而将控制权交给了系统。

至此,flask基础知识已经讲完,现在已经可以做一些简单的程序,但是肯定不会如此的做,就像只用servlet,不用jsp页面或其他模板也可以做出很绚丽的系统,但大部分还是需要jsp页面或其他模板页作为支撑,下一章将说明在系统中如何使用jinja2模板引擎和wtf表单插件。

标签: flask开发实例

本文链接地址:https://www.jiuchutong.com/biancheng/377114.html 转载请保留说明!

上一篇:Python 文件处理注意事项总结(Python文件处理)

下一篇:非递归的输出1-N的全排列实例(推荐)(非递归与递归)

  • sql语句中单引号嵌套问题(一定要避免直接嵌套)(sql语句中单引号是什么)

    比如下面例子是存储过程里查询时的语句示例

    红色部分是会报错的,应该写成 @condition= 'ROOMTYPElike ‘ ‘%标准间%' ‘ ', 蓝色部分不是双引号,而是两个单引号

    谈谈sqlserver自定义函数与存储过程的区别 一、自定义函数:1.可以返回表变量2.限制颇多,包括不能使用output参数;不能用临时表;函数内部的操作不能影响到外部环境;不能通过select返回结果

    深入分析SqlServer查询计划 对于SQLServer的优化来说,优化查询可能是很常见的事情。由于数据库的优化,本身也是一个涉及面比较的广的话题,因此本文只谈优化查询时如何看懂SQ

    sql 判断字符串中是否包含数字和字母的方法 判断是否含有字母selectPATINDEX('%[A-Za-z]%',‘ads')=0(如果存在字母,结果1)判断是否含有数字PATINDEX('%[0-9]%',‘sdf" class="img-responsive" alt="sql语句中单引号嵌套问题(一定要避免直接嵌套)(sql语句中单引号是什么)">

    sql语句中单引号嵌套问题(一定要避免直接嵌套)(sql语句中单引号是什么)

  • 苹果mac电脑下刻录光盘的技巧分享(mac电脑如何下载app)

    苹果mac电脑下刻录光盘的技巧分享(mac电脑如何下载app)

  • linux系统管理mail电子邮件日志(邮件系统)的详细图解(LINUX系统管理员维护招聘)

    linux系统管理mail电子邮件日志(邮件系统)的详细图解(LINUX系统管理员维护招聘)

  • 将iTunes Radio中的纯净版音乐还原为原声版音乐的方法(如何把itunes的音乐导入ipod)

    将iTunes Radio中的纯净版音乐还原为原声版音乐的方法(如何把itunes的音乐导入ipod)

  • jQuery EasyUi 验证功能实例解析(easyui的表单验证)

    jQuery EasyUi 验证功能实例解析(easyui的表单验证)

  • PHP+jquery+ajax实现分页

    PHP+jquery+ajax实现分页

  • Javascript基础教程之函数对象和属性(js基础教程)

    Javascript基础教程之函数对象和属性(js基础教程)

  • 常用的JS验证和函数汇总(js验证正则表达式)

    常用的JS验证和函数汇总(js验证正则表达式)

  • Javascript面向对象设计一 工厂模式(javascript面向对象精要)

    Javascript面向对象设计一 工厂模式(javascript面向对象精要)

  • 小规模纳税人税收优惠2023
  • 北京增值税发票勾选认证平台
  • 网上报税怎么报啊
  • 税务筹划的基本前提是
  • 个税是按照实发工资计算吗
  • 加工承揽属于劳务关系吗
  • 应付账款及预付账款分录
  • 未开票收入如何红冲
  • 资产负债表应收账款等于什么
  • 黄金销售免税
  • 水电费专用发票税率
  • 短期借款明细账应采用三栏式账页格式
  • 财务软件期初数据录入
  • 员工入职第一个月交社保吗
  • 确认的投资收益
  • 注销公司房产税从哪年从哪年开始交
  • 一般纳税人从小规模纳税人取得专用发票
  • 附加税的税率表
  • 以前年度损益调整编码
  • 物流公司增项
  • 一台设备发票开来0.5台怎么做账?
  • 有奖发票奖金支付
  • Windows11更新后无法联网
  • php输出mysql
  • PHP:get_meta_tags()的用法_url函数
  • linux系统中文输入法切换不出来
  • 以前年度损益调整属于哪类科目
  • 营改增后小规模纳税人标准
  • 金税盘,税控盘Ukey价格
  • 块元素和行内元素区别
  • php递归函数桃子一天吃一半
  • php读取文件内容的方法和函数
  • python getpass模块
  • 一般纳税人公司注册需要几个人
  • 公司新增注册资本是认缴的吗
  • 出纳收到现金会计分录
  • mongodb应用实例
  • 小规模增值税减按1%的政策
  • 减免税额和抵免税额是什么意思
  • 大货车怎样申请报废
  • 销售货物的收入计入什么科目
  • 企业对外借款计入什么科目
  • 房屋开发企业
  • 基建期罚款支出账务处理
  • 企业所得税汇算清缴时间
  • 损益类会计科目有哪些
  • 股票股利应该何时分摊
  • 商家代金券谁出钱
  • 生产成本二级科目设置
  • 租车费报销管理规定
  • 预付账款属于哪一类账户
  • 如何算增值税金额
  • mysql绿色版配置
  • MySQL-group-replication 配置步骤(推荐)
  • win8.1所有程序在哪里
  • xp系统为什么不能用了
  • windows.h在linux中
  • centos7日志管理
  • centos重新安装命令
  • 要使用windows
  • win10相机桌面快捷方式
  • libegl.dll病毒
  • mac10.10.5无法升级
  • iptables -z
  • 电脑预装软件是什么意思
  • 搭建android开发环境需要用到哪些工具
  • dosbox批处理
  • unity 虚拟摇杆
  • android常见面试题及答案
  • 代码整洁之道 高清pdf
  • vue怎么实现多页面
  • shell循环遍历目录
  • node写自动化脚本
  • gradle手动安装
  • python在设计领域的应用
  • JavaScript基础教程
  • JavaScript中的this
  • 河北电子税务局新版登录
  • 税控盘开的电子票怎么发送给人
  • 匈牙利离中国广东有多远
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设