位置: 编程技术 - 正文

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框架图)

  • 查账征收纳税申报表
  • 外出办事车费计入什么科目
  • 小规模免收增值税的收入范围
  • 出售无形资产计入资产处置损益
  • 冲减暂估成本的会计分录
  • 居民个人根据各项所得的收入 公益捐赠
  • 税负率过低进行什么交易
  • 事业单位乱报销出纳怎么办?
  • 房地产企业汇算清缴报表
  • 认缴制需要多久交完
  • 所得税汇算清缴补税的会计处理
  • 企业员工用自己手机发送工作
  • 停车管理费收费依据
  • 小规模税局代增值税专用发票怎么交税
  • 个体户定额定税要做账吗
  • 货物和劳务
  • 限制性股票股利会计处理
  • 代缴社保工资怎么做账
  • 内插法计算内部收益率公式
  • 转让长期股权投资怎么算
  • 税务代开的专票未取票,逾期会作废吗?
  • 苹果静音模式siri
  • 电子发票如何作废冲红
  • 上月有留底税额,这个月有销销没有进项怎么做账
  • 年度成本费用利润率多少合适
  • 个体户生产经营所得怎么报税
  • 开发票时的数据可以四舍五入吗
  • 车辆维修的增值税怎么算
  • 营改增之前的建筑业税率是多少
  • 滴滴司机工资怎么算的
  • 购货款先到支付后付款
  • 增值税发票红字信息表
  • phpget方法
  • 库存现金总分类账怎么登记
  • 使用一个for循环每次输入一个姓名和得分
  • 公司法人往公司账户转钱会计分录
  • 谷歌浏览器跨域解决方案
  • vue前端常见面试题
  • 单元测试的测试工具
  • 发票失控进项转出
  • 汽车销售公司购置税账务处理
  • 发票勾选认证具体流程
  • 转出未交增值税会计处理
  • 树结构ADT知识点思维导图
  • 出租车票可以查到行程吗
  • 总资产报酬率的高低直接影响净资产收益率的高低
  • 水泥贸易利润
  • 公司厨房用具
  • 产品检验费怎样计算
  • 长期待摊费用每个月摊销多少
  • 企业内部股权转让协议书
  • 贷款罚息会计分录
  • 商业汇票贴现必须具备的条件
  • 存货售出时可以冲减资产减值损失吗
  • 开广告费用要交增值税吗
  • 网上认证平台进不去怎么办
  • fedora系统怎么样
  • be备份linux系统
  • win7旗舰版系统激活密钥
  • win8.0下载
  • windows 查看图片
  • win 8怎么样
  • 网站遇到错误号怎么办
  • win7系统的磁盘管理在哪里,怎么打开
  • Win7 64位操作系统怎么使用DVD刻录光驱复制软件
  • win10预览版21277下载
  • h1标签的使用完全正确的是
  • 安卓手机如何打开.icon文件
  • vue switch组件
  • 日历查询的算法怎么写
  • bash shell 语法
  • javascript web开发
  • js实现功能
  • jquery.siblings()
  • js中数组排序sort的用法
  • jquery轮播图原理
  • 法制建设包括哪三个方面
  • 2023年印花税税目表
  • 亳州国税局电话号码
  • 税务全面从严治党工作会议讲话稿
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设