项目阶段之flask(六)

简介: 项目阶段之flask(六)

1.小知识点

1.localtime = time.localtime()将时间戳(本地的时间戳),格式化为本地的时间的对象

time.struct_time(tm_year=2019, tm_mon=1, tm_mday=6, tm_hour=9, tm_min=50, tm_sec=50, tm_wday=6, tm_yday=6, tm_isdst=0)可以非常方便的表示年月日时分秒,今天是本周的第几天,今天是今年的第几天


2.datetime.now()获取本地系统的当前时间

now_time = datetime.now()得到的时间是下面的结果

datetime.datetime(2019, 1, 6, 9, 52, 30, 630402)


3.timedelta()时间跨度,这个时间跨度是可以做运算的

days_time = timedelta(days=2)可以相加减,比较大小

timedelta代表两个datetime之间的时间差


4.date()可以使用指定的时间来创建一个日期对象

date_time = date(2018,1,1)


5.strptime作用,将时间的字符串,转成时间对象

1 day_start_time_str = "%s-%s-%s" % (localtime.tm_year, localtime.tm_mon,localtime.tm_mday)
2
3# 根据字符串,格式化日期对象,参数一是时间的字符串,参数二是格式化符号
4day_start_time_date = datetime.strptime(day_start_time_str, "%Y-%m-%d")
5
6# %y只能写两位数的年,%Y能匹配四位数的年,如果不对应的话,会报错.
7# "2017年11月11日"用"%Y年%m月%d日"匹配
8# 格式要一一对应


6.strftime和5正好相反,将时间对象转换成字符串格式


7.form表单不指定method默认是GET请求;如果不指定action,就是当前页面.


8.ajaxSubmit是表单提交,这种方式可以处理富文本


9.如果不想input的内容被更改,可以给标签添加一个属性readonly


10.vi打开文件,内有行号的时候我们可以输入:set nu然后就可以显示行号了


11.502 Bad Gateway指的是找不到路径,我们可以将程序启动一下,然后再去进行访问


12gunicorn启动应用程序的时候.-w表示进程 (worker cpu*2*8+1)里面的数字是核数*线程数进行计算的





2.管理员界面用户列表

请求路径: /admin/user_list请求方式: GET请求参数:p返回值:渲染user_list.html页面,data字典数据


步骤:

1.获取参数,p

2.参数类型转换

3.分页查询用户数据

4.获取分页对象属性,总页数,当前页,当前页对象列表

5.用户对象列表转换成字典列表

6.拼接数据,渲染页面





3.管理员界面获取/设置新闻审核列表

请求路径: /admin/news_review请求方式: GET请求参数: GET, p,keyword返回值:渲染user_list.html页面,data字典数据


实现步骤:

1.获取参数,p

2.参数类型转换

3.分页查询待审核和未通过的新闻数据

4.获取分页对象属性,总页数,当前页,当前页对象列表

5.用户对象列表转换成字典列表

6.拼接数据,渲染页面





4.管理员界面获取/设置新闻审核详情

请求路径:/admin/news_review_detail请求方式: GET,POST请求参数: GET, news_id, POST,news_id, action返回值:GET,渲染news_review_detail.html页面,data字典数据


实现思路:

1.判断请求方式,如果是GET请求,

2.获取新闻编号

3.获取新闻对象,判断新闻对象是否存在

4.携带新闻对象的数据渲染页面

5.如果是POST请求,获取参数

6.校验操作类型

7.根据编号获取新闻对象,判断新闻对象是否存在

8.根据操作类型,改变新闻的状态

9.返回响应




5.管理员界面获取/设置新闻版式编辑详情

请求路径:/admin/news_edit_detail请求方式: GET, POST请求参数: GET, news_id, POST(news_id,title,digest,content,index_image,category_id)返回值:GET,渲染news_edit_detail.html页面,data字典数据, POST(errno,errmsg)


操作步骤:

1.判断请求方式,如果是GET请求

2.获取新闻编号

3.通过新闻编号查询新闻对象

4.携带新闻数据,渲染页面

5.如果是POST请求,获取参数

6.参数校验,为空校验

7.根据新闻编号取出新闻对象

8.上传新闻图片

9.设置新闻对象的属性

10.返回响应

相关文章
|
5月前
|
缓存 前端开发 JavaScript
flask各种版本的项目,终端命令运行方式的实现
flask各种版本的项目,终端命令运行方式的实现
236 4
|
5月前
|
数据可视化 API 开发者
通俗易懂:一步步教你 Flask 项目自动生成 API 文档
Flasgger,作为一款强大的 Flask 扩展,自动从 Flask 应用中提取并生成 OpenAPI 规范文档,配备 SwaggerUI,为开发者提供了一条快捷通道,让 API 的文档编制和交互式测试变得简单易行。Flasgger 的设计原则是简化开发流程,通过与 Flask 框架的无缝整合,让开发者可以更专注于应用逻辑的构建。
|
11月前
|
前端开发 JavaScript Python
flask 项目目录结构
flask 项目目录结构
155 0
|
存储 前端开发 NoSQL
项目阶段之flask(三)
项目阶段之flask(三)
|
2月前
|
Linux Python
【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
|
3月前
|
安全 前端开发 API
震惊!掌握Django/Flask后,我竟然轻松征服了所有Web项目难题!
【7月更文挑战第15天】Python Web开发中,Django以其全面功能见长,如ORM、模板引擎,助你驾驭复杂需求;Flask则以轻量灵活取胜,适合快速迭代。两者结合使用,无论是数据库操作、用户认证还是API开发,都能让你应对Web挑战游刃有余。掌握这两者,Web项目难题变得易如反掌!
69 10
|
4月前
|
数据处理 Python
Flask 项目工程目录层级划分
本文介绍了如何将 Flask 项目工程目录层级按照主题分类划分,主要包括模型层、视图层、表单层、模板文件和静态文件。通过合理地组织项目文件,可以提高项目的可读性、可维护性和可扩展性。
73 5
|
4月前
|
前端开发 索引 Python
【已解决】Flask项目报错TypeError: tuple indices must be integers or slices, not str
【已解决】Flask项目报错TypeError: tuple indices must be integers or slices, not str
79 0
|
5月前
|
前端开发 JavaScript 数据库
Flask狼书笔记 | 09_图片社交网站 - 大型项目的架构与需求(2)
9.8 收藏图片 前面已经学习过如何使用关联表来表示多对多关系,缺点是只能表示关系,不能存储数据(如我还想记录下收藏图片的时间戳)。这种情况下,我们可以使用关联模型来表示多对多关系。 在关联模型中,我们将Photo模型与User模型的多对多关系,分离成了User模型和Collect模型的一对多关系,和Photo模型与Collect模型的一对多关系。
135 0
|
5月前
|
开发者 索引 Python
Flask环境搭建与项目初始化
【4月更文挑战第15天】本文指导如何搭建Flask开发环境并初始化项目。首先确保安装Python,然后通过pip安装Flask。创建名为`myflaskapp`的项目目录,包含`app.py`入口文件。在`app.py`中初始化Flask应用,定义路由和视图函数。运行`python app.py`启动开发服务器,访问`http://127.0.0.1:5000/`查看结果。完成基本设置后,可按需求扩展应用功能。