Flask Day6

Flask Day6

1.点赞前端逻辑

js实现:未登录先登录
请求参数 action comment_id

detail视图查询点赞情况,发送到前端 返回点了哪些赞?

列表放入用户对下面哪些评论点赞了
在查询评论的时候返回字典加一个属性,is_like查询一下当前用户是否点赞了评论

查出新闻模型 当前新闻news_id(条件) 所有的评论id
查询当前用户id(条件1)当前新闻里的评论id(条件2) 查出一个CommentLike列表
相当于一个子查询,第一条查出的结果是第二条的条件

查询点赞后端具体处理:用到列表推导式

comment_ids = [comment.id for comment in comments]
查出当前新闻的所有评论id
comment_likes = CommentLike.query.filter(CommentLike.comment_id.in_(comment_ids),CommentLike.user_id == g.user.id)
做子查询
comment_like_ids = [comment_like.comment_id for comment_like in comment_likes]
查询出当前用户当前新闻所有点赞的评论
然后再查询生成评论列表的时候,判断评论是否在点赞列表中,如果存在,就给评论列表里的字典新加的属性commentLike 为True 否则是False

点赞条数记录

后端计数:
不应该从前端取,应该是每次修改,数据库模型的计数都应该修改

2.创建个人中心模版,基类模版抽取

同首页详情页的抽取一样
再渲染模版
创建个人信息模块

后端实现:
未登录重定向到首页

个人资料修改:
基本资料:get获得页面,post发送数据修改数据库

2.2 上传头像的准备,七牛云的引入

个人中心的菜单切换都是切换到不同的ifarm
后台定义不同的路由 方法:get渲染模版 post修改数据

根据七牛云的接口pip install qiniu
封装一个上传图片的工具
access_key secret_key 存的时候是一个key 一个value

2.3上传头像后端代码实现

post表示修改头像 取到参数:图片文件 再调用七牛云的接口上传图片;七牛云的上传会返回一个key,记录这个key;保存七牛云的key到数据库:取到模型,g.user.avatar_url=key,将头像地址返回前端以便前端能实时更新头像

2.4 前端上传头像的实现

$(this).ajaxSubmit({}) 自动提交表单里参数
使用jquery的代码模拟点击提交操作

3.修改密码逻辑

后端接口:还是一样有get 有post方法
get渲染模版 post修改数据 post获取到参数:密码 新密码

4.用户的收藏的前后端逻辑实现

一对多,在用户的个人中心看收藏了哪些文章

获取参数 request.args.get(‘p’)

使用paginate分页

返回是模版渲染

为了分页显示

location.href = ''设置地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值