flask中如何捕获web用户的点赞行为

最近在学习flask, 遇到一个新问题

flask中如何捕获web用户的点赞行为 ,就是下图中,用户点了赞后,数字加1,这个事件flask在服务器端如何捕获,本人web小白,希望各位指导!谢谢
图片描述

回答:

一般的思路可以基于 MVC 的模式.

如.

你在后台有一个这样的 Model

其作用是: 维护一个键值类型的数据结构{'blog_name': vote_count}, 将每一篇日志的点赞数保存起来

这里我们使用通用的键值数据库redis来实现上面的数据结构)

#!/usr/bin/env python

# my_model.py

class Vote:

@classmethod

def new(self, artice_name):

key = generate_redis_key(artice_name) # 生成此篇日志在 redis 中的 key 值

redis.incr(key) # 将此 key 值的计数加一. 即"点赞数"加一

# other code ...

当然, 这个 model 是不完整的, 你还要开发, 判断点赞的的这个用户是否已经给这篇日记点过赞, 取消点赞, 统计点赞数之类的功能和细节...

然后, 你要写一个函数, 用来调用你的model. 也就是实现Controller

#!/usr/bin/env python

# my_controller.py

# import some_module, ...

from my_model import Vote

@app.route('/vote/<article_name>')

def vote(article_name):

Vote.new(article_name)

# other code... ...

最后, 为了捕获用户的点赞行为, 你需要在前端写一段 JavaScript 代码. 它将点赞的文章名, 点赞的用户, 点赞的时间等数据传送到 Controller 去.

也就是发送一个 Post 请求到我们在 Controller 里定义好的URL上

# my_js.js

# require jQuery

$(document).ready(function(){

$("vote_button").click( function() {

# post the data to /vote/<article_name>

}

}

以上.

回答:

这个一般都是用javascript实现的吧。

回答:

ajax 是个好东西。

以上是 flask中如何捕获web用户的点赞行为 的全部内容, 来源链接: utcz.com/a/160839.html

回到顶部