位置: 编程技术 - 正文

Flask框架的学习指南之制作简单blog系统(flask框架官方文档)

编辑:rootadmin

推荐整理分享Flask框架的学习指南之制作简单blog系统(flask框架官方文档),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:flask框架图,flask框架官方文档,flask框架工作原理,flask框架菜鸟教程,flask框架结构,flask框架官方文档,flask框架可以做什么,flask框架入门,内容如对您有帮助,希望把文章链接给更多的朋友!

之前写了一篇flask开发环境搭建,今天继续,进行一个实战小项目-blog系统。

blog系统很简单,只有一个页面,然后麻雀虽小五脏俱全。这里目的不是为了做项目而做项目,这篇文章本意是通过这次练习传达以下几个知识点:

1、从全局上了解flask项目的目录结构

2、flask项目的运行机制

3、flask框架实现MVC架构

4、flask-sqlalchemy 操作mysql数据库

一、新建项目:blog系统

在pycharm中,新建flask项目,如下图:

完成后的目录结构是这样的:非常简单,一个static文件夹,一个templates文件夹,一个py文件

以上的目录结构是flask初始时的结构,这个只能应对很小的项目,对于大型复杂的项目,我们需要引入包的管理,MVC架构设计。

二、目录结构重构,引入包管理

针对上面的结构,在最上层blog3目录下,

1、新建一个runserver.py文件,作为项目统一入口文件

2、新建blog文件夹,把已存在的static,templates,blog3.py移到blog文件夹下,然后分别建controller、model文件夹。把blog3.py改名为__init__.py,

现在目录如下所示:

这样就相当于一个大工程结构了:

1)最上层blog2目录是项目名称,一个项目下可以包括多个模块,也就是应用,每个应用下有自己的配置文件,初始化文件,MVC架构。

2)runserver.py:与应用模块平级,作为项目启动文件

3)第二级blog2目录:模块名称

controller目录:MVC中的C,主要存放视图函数

model目录:MVC中的M,主要存放实体类文件,映射数据库中表

templates:MVC中的V,存放html文件

static:静态文件,主要存放css,js等文件

__init__.py:模块初始化文件,Flask 程序对象的创建必须在 __init__.py 文件里完成, 然后我们就可以安全的导入引用每个包。

setting.py:配置文件,数据库用户名密码等等

三、开发代码

1、先把项目运行起来:

1) 编写__init__.py文件,创建项目对象,代码如下:

Flask框架的学习指南之制作简单blog系统(flask框架官方文档)

2) 在runserver.py文件中添加如下代码:

3)运行runserver.py文件:

然后在浏览器中输入: User.py:

2) Category.py

3)在模块目录blog2下新建setting.py文件,配置数据库连接信息

4)让项目读取配置文件

修改__init__.py:添加如下内容(红色部分):

注意:FLASKR_SETTINGS环境变量需要手工单独设置,window下可以在命令行中输入:

或者点击我的电脑-->高级-->环境变量,新建一个。

5)创建数据库和表

windows命令行模式下,cd到项目runserver.py那个目录下,进入python shell下:

输入红色部分:

如果没有任何错误输出代表创建数据库和表成功了。这时我们到数据库中去查看:

数据库已经存在了,再看看表情况:发现没有对应的b_user和b_category表。这是为什么呢?是不是没有找到model目录下的两个类呢。问题在于:__init__.py文件没有引入model包,导致__init__.py无法找到实体类。记住:一切模块对象的创建都在__init__.py中完成

在blog2目录下的__init__.py添加如下代码:

再次运行上面命令:db.create_all()方法。这时表已经创建成功了。

3、添加界面模板:如登陆页面,显示blog文章页面,添加blog页面

在templates目录下添加三个html文件:

layout.html:

login.html:

show_entries.html:

对应static中添加css文件:style.css

4、添加业务逻辑

在controller目录下新建blog_message.py文件:

千万不要忘了在模块级目录下(blog2目录)的__init__.py文件引入视图模块,代码如下:

5、运行项目,效果如下:

1)输入 in

忘了告诉你了,你要事先在b_user表中添加一个用户喔,因为登陆要验证用户的,否则你是无法登陆成功的。

3) 添加条目

标签: flask框架官方文档

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

上一篇:Flask框架的学习指南之开发环境搭建(flask框架官方文档)

下一篇:Flask框架的学习指南之用户登录管理(flask框架图)

  • 增值税普通发票怎么开
  • 哪些土地房产转让合法
  • 租金收入个税怎么交
  • 小规模季度不超30万需要交什么税
  • 差旅费津贴需要缴纳个人所得税吗?
  • 新成立的公司企业所得税怎么申报
  • 年报过期了
  • 自来水税率是9%还是3%
  • 劳务报酬增值税和个人所得税都要交吗
  • 设备使用率怎么计算公式
  • 无货源发货如何填写物流单
  • 火车票退票手续费扣多少
  • 营改增后发票上必须要开具税收分类编码吗?
  • 代增值税专用发票网上申请
  • 民营医院增值税政策
  • 房租费简易征收税率
  • 付款申请需要附什么依据
  • 对方开增值税普通发票,我方需要做什么呢?
  • 本年利润每个月都要结转吗
  • 不开票的收入怎么避税
  • 运费收入会计处理
  • 业务招待费例子
  • 浏览器标签栏
  • mac u盘
  • 外汇账户怎么开
  • 返利冲减收入
  • 专家评审费是否需要发票
  • 公司的现金管理规定
  • window11如何打开任务管理器
  • win11启动方式
  • 房地产企业出售土地交什么税
  • 企业常用的成本核算方法有哪些
  • 混合筹资的定义
  • 混合成本的分解方法很多,通常有
  • 土地价款会计分录
  • laravel 5.4中实现无限级分类的方法示例
  • 圣诞精灵什么意思
  • 销售材料账务处理
  • 账面价值大于计税基础为啥为递延所得税负债
  • 企业所得税退税申请理由怎么写
  • 公司注册资金多好还是少好
  • 淘宝企业店必须绑定对公账户吗
  • java泛型的定义和使用
  • MongoDB db.serverStatus()输出内容中文注释
  • sql server应用
  • 公司车辆保险费要交印花税吗
  • 企业付给个人工资怎么算
  • 固定资产货币化,货币资产保险化,保险资产信托化
  • 回扣发票能查出来么
  • 员工工资可以当月计提当月发放吗
  • 消费税也是流转税吗
  • 无法支付其他应付款核销条件
  • 利息支出的纳税调整计算公式
  • 出资注意事项有哪些内容
  • 税率调整后税差怎么算
  • 对公账户给私人账户转账,几天到账
  • 可转债不卖会亏钱吗
  • 企业的支出包括( )支出
  • 可供出售金融资产有哪些
  • 免税蔬菜税额用什么表示
  • 收到银联商务客户短信
  • 微软10月已停止服务中国用户
  • freebsd使用wifi
  • winxp和win7双系统安装
  • win7修改sid
  • win8怎么切换hdmi
  • awk统计nginx日志
  • centos搭建v2
  • mpcmdrun.exe是什么进程
  • win8打开ie
  • win8怎么进去安全系统
  • cocos2dx 3.5 ”hello world“解析
  • 3dmax创建图形怎么用
  • javascript入门基础
  • js打开浏览器新的tab页
  • js super方法
  • vue卡片式风格
  • 公司在异地办公
  • 云南省税务局咨询电话
  • 进口非应税消费品的组成计税价格为
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设