项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...文章分四部分介绍: Redis 缓存设计及实现 数据库设计 数据库操作 开启定时任务持久化存储到数据库 一、Redis 缓存设计及实现 1.1 Redis 安装及运行 Redis 安装请自行查阅相关教程...1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数。...id,点赞用户id,点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。
项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...文章分四部分介绍: Redis 缓存设计及实现 数据库设计 数据库操作 开启定时任务持久化存储到数据库 一、Redis 缓存设计及实现 1.1 Redis 安装及运行 Redis 安装请自行查阅相关教程...1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数。...id,点赞用户id,点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。 如有更好的实现方案欢迎在评论区交流…
项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...文章分四部分介绍: Redis 缓存设计及实现 数据库设计 数据库操作 开启定时任务持久化存储到数据库 一、Redis 缓存设计及实现 1.1 Redis 安装及运行 Redis 安装请自行查阅相关教程...由于需要记录点赞人和被点赞人,还有点赞状态(点赞、取消点赞),还要固定时间间隔取出 Redis 中所有点赞数据,分析了下 Redis 数据格式中 Hash 最合适。...id,点赞用户id,点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。
领读: 点赞是个频率比较高的事件,也不是特别重要的记录,使用缓存来存储还是比较合理的,另外像排行榜、热议等都可以使用缓存,先来看看点赞是如何实现的吧,详细代码可以clone看下哈,跟紧脚步,学技术~ -...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...文章分四部分介绍: Redis 缓存设计及实现 数据库设计 数据库操作 开启定时任务持久化存储到数据库 一、Redis 缓存设计及实现 1.1 Redis 安装及运行 Redis 安装请自行查阅相关教程...id,点赞用户 id,点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。
项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...文章分四部分介绍: Redis 缓存设计及实现 数据库设计 数据库操作 开启定时任务持久化存储到数据库 一、Redis 缓存设计及实现 1.1 Redis 安装及运行 Redis 安装请自行查阅相关教程...1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数。...id,点赞用户 id,点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。
项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...文章分四部分介绍: Redis 缓存设计及实现 数据库设计 数据库操作 开启定时任务持久化存储到数据库 一、Redis 缓存设计及实现 1.1 Redis 安装及运行 Redis 安装请自行查阅相关教程...1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数。...id,点赞用户id,点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。 如有更好的实现方案欢迎在评论区交流… 代码出自开源项目 CodeRiver,致力于打造全平台型全栈精品开源项目。
项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...文章分四部分介绍: Redis 缓存设计及实现 数据库设计 数据库操作 开启定时任务持久化存储到数据库 一、Redis 缓存设计及实现 1.1 Redis 安装及运行 Redis 安装请自行查阅相关教程...由于需要记录点赞人和被点赞人,还有点赞状态(点赞、取消点赞),还要固定时间间隔取出 Redis 中所有点赞数据,分析了下 Redis 数据格式中 Hash 最合适。...设点赞人的 id 为 likedPostId,被点赞人的 id 为 likedUserId ,点赞时状态为 1,取消点赞状态为 0。...id,点赞用户id,点赞状态。
双击点赞 和 双击取消点赞 如:在抖音中双击屏幕之后就可以点赞,小红心就会变亮 [在这里插入图片描述] 把白色和红色的心形图片复制到 media 下 [在这里插入图片描述] [在这里插入图片描述] 需要图片的可以自取...,下面白色图片由于没有背景,所以显示的是白色的,下载后鼠标点击就能看见了 [请添加图片描述] [请添加图片描述] 因为要双击屏幕才能点赞,所以还要给布局组件id 代码实现: ability_main 实现呢? 业务分析: 双击屏幕之后点赞。(上面已实现),再次双击屏幕之后,不会取消点赞,只有点击后红心之后才能取消点赞。...单击红心也可以点赞,再次单击红心就会取消点赞 实现思路: 给最外层的布局添加双击事件,双击之后点赞,变成红色心。 如果已经被点赞,那么还是修改为红色心,相当于不做任何处理。 给图片添加单击事件。...代码实现: 上面布局文件不变,MainAbilitySlice 如下: 给布局添加双击事件,因为再次双击不会取消点赞,所以把else代码里设置为红色后就把 flag 取反去掉,就不会出现再次双击取消点赞了
使用技术 利用Ajax点赞 并 局部刷新页面 绑定事件 点赞和绑定 灵活处理 利用F 页面局部刷新 点赞数 反序列json获取布尔值 视图 布尔值,必须用Json...反序列化才能使用 F的妙用 点赞数自加1 def digg(request): # ajax 是json格式,特殊情况下需要反序列 import json from...django.db.models import F # 利用F来做自加1操作 article_id = request.POST.get('article_id') is_up =...json.loads(request.POST.get('is_up')) # 必须反序列化才能为布尔值 # 点赞人即当前登陆人 user_id = request.user.pk...HTML Ajax局部刷新功能 {% extends 'base.html' %} {# 继承公共部分 #} {% block content %} {% csrf_token %} <
特此水一篇折腾记录-Typecho实现文章点赞,当时也懒得记录,现在觉得有必要记录一下。...cid 就输出 error 不再往下执行 exit('error'); } 接下来在该页面加入点赞按钮(按钮样式自行修改): //点赞数量 最后Ajax点赞: 以下js代码添加至footer.php中, // 点赞按钮点击 $('#agree').on('click', function...var re = /\d/; // 匹配数字的正则表达式 // 匹配数字 if (re.test(data)) { // 把点赞按钮中的点赞数量设置为传回的点赞数量...}, error: function () { // 如果请求出错就恢复点赞按钮 $('#agree').get(0).disabled =
点赞功能 社交平台的必备良药,谁谁谁什么时候给你点了个赞,点赞什么的貌似已经深入人心了。...之前在 @火喵酱 的博客页面有看到说想用 leancloud 实现 do you like me 的点赞功能,之前没接触 leancloud 的 SDK 不知道咋搞,后来就不了了之,然后因为最近做了 valine...的最新评论排行,所以借这个风顺便来做个点赞功能~ 点赞按钮 实践操作 和 valine 最新评论一样,首先需要引入 sdk 并初始化完成化后接入具体实现的代码即可(这个就不说了,上篇笔记里有写的) 实现思路...这里再聊下思路,一般做点赞功能都是在本地点击计数之后再把数据上传到云端服务器,访问页面的时候直接根据页面拉取对应的数据填充即可。...=undefined){ //.. } 其他 以上代码写入 SDK 初始化后运行就可以正常获取不同页面的点赞次数了,数据创建后会在 leancloud 控制台显示,如下 其实拿到信息还可以通过点赞数量创建热门文章
一年前,Facebook点赞按钮发布更新。一年后的今天,Facebook小小的点赞按钮因为Ted刚发布的一段演讲掀起波澜。设计一个像FB点赞按钮那么小的东西很难么?...实际上,大拇指按钮点赞也是源自facebook的设计,这个大拇指点赞按钮一定程度上在很长时间内都在一定程度上代表着Facebook的品牌形象。...事实上, 点赞按钮并不像我们想象中的那么简单。所有好的按钮设计,包括facebook中的点赞按钮,都是不能与对应的辅助设计分开来看的。...其实这次Facebook更新的经验指出在于点赞、分享按钮的结合。要知道,每天都有220亿人会看到Facebook的点赞按钮,其中超过一半的用户会进行点击操作。...点赞和分享按钮综合到同一个按钮中,意味着随着分享被激发后二者的相互促进,用户将有更多机会更广泛地传递信息。在Facebook随后的测试中,新点赞按钮的点击率稳定在旧点赞按钮的两倍以上。 ?
php /** * 点赞 */ namespace app\like\service; use app\common\DataService; use app\common\Redis; class...const LIKE_USER_RECEIVE_SHOW_CHINESENAME = '我点赞了这条'; const BLOG_CHINESENAME = '资讯'; /**...* 点赞资讯 * @param int $userId 用户ID * @param int $blogId 资讯ID */ public function...($userId, $sys); Redis::getInstance()->redisZrem($key, $blogId); //我的点赞全部列表...":blog"); return true; } /** * 判断资讯是否被点赞 * @param int $userId 登录用户ID
点赞业务本身并不复杂,无非是对数据的update,但是点赞本身是无意识行为,并且同一个用户可对博文进行点赞/取消点赞,如果直接操作数据库,无疑会增加数据库io操作。...' ROW_FORMAT = Dynamic; 实现思路 1.方案一 redis数据结构采用hash或者set都可,前缀自定义,后缀使用图文消息的id key-value------>{“prefix...,1:点赞,2:取消点赞 public enum ThumbEnum { THUMB(1,"点赞"), CANCELTHUMB(2,"取消点赞"), private String...messageName; } ThumbEnum(String messageName) { MessageName = messageName; } } 4.接口实现...("isLike", 1);//1未点赞2已点赞 } else { //记录点赞用户 redisService.sadd(key, userIdStr
archive->request->do_action){ likeup($archive->request->likeup,$archive->request->do_action); exit; } } //点赞函数...$cid, ""); } echo $num; } post请求参数 likeup:文章id do_action:do或者undo likeup是指定文章id的,do_action是点赞动作,动作为do...为点赞,undo为取消点赞!...前端方面 前端方面需要写ajax请求接口的函数,然后在post.php里加入按钮,点击按钮传递文章id与动作触发相关点赞或者取消点赞效果。...关于点赞数 在post.php里添加cid,'kkb'); ?>即可显示点赞数,同时ajax动作请求完成也会返回点赞数。 linkCard('.post-content','0');
在众多软件应用中,点赞功能几乎成了所有应用中的“标配”。但实现一个高效的点赞功能并不简单,尤其是在面对大规模的用户量和高并发场景时。...今天,我们就从实际需求出发,探索如何利用 Redis 的数据结构来设计一个点赞系统,从而理解 Set 和 Bitmap 数据结构的优缺点。...需求分析我们设定这样一个需求场景:在一篇文章的评论下实现点赞功能,每位用户只能对同一条评论点赞一次,再次点赞则视为“取消点赞”。此外,我们还需要统计每条评论的总点赞数。...Set 方案的代码实现以下是 PHP 实现点赞、取消点赞和统计点赞数的代码示例:// 点赞接口function likeComment($userId, $commentId) { $redis...Bitmap 方案的代码实现以下是使用 Bitmap 实现的 PHP 代码示例:function likeComment($userId, $commentId) { $redis = new Redis
项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...文章分四部分介绍: Redis 缓存设计及实现 数据库设计 数据库操作 开启定时任务持久化存储到数据库 Redis 缓存设计及实现 Redis 安装及运行 Redis 安装请自行查阅相关教程。...点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据: 一种是记录点赞人、被点赞人、点赞状态的数据。 另一种是每个用户被点赞了多少次,做个简单的计数。...id,点赞用户 id,点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。如有更好的实现方案欢迎在评论区交流。 作者:solocoder
觉得微博手动点赞太过麻烦?其实自动点赞的实现并不困难!...本篇会有Cookie、session和token方面的知识,不太了解的可以先看下 我们先通过前两个小节大概了解一下我们Python登录微博的原理,然后第三小节就会跟大家介绍微博自动点赞的代码。...目录 ---- 一、实现登陆微博功能 首先进入后按F12打开开发者工具,将如图的按钮点击后,在浏览器中手动登陆一次,在Network 标签的XHR类型中找到Login请求标签,在Form data下我们可以看到...self.login() self.compose(content) weibo = WeiboSpider() weibo.send(input("请输入发送的内容:")) 三、实现微博自动点赞...weibo_list_req.json() weibo_list = weibo_list_data['data']['cards'] return weibo_list # 点赞微博
一、思路 在CSDN中,如果实现自动点赞,就必须登录,这就避免不了和selenium打交道。...Selenium是一个WEB自动化测试工具,在Python中常用于模拟登陆的实现 实现CSDN自动点赞分以下几个步骤: 登录账号 获取并储存cookies 读取并传入cookies 实现自动点赞 二、代码实现...cookies.txt", "r") as fp: cookies = json.load(fp) for cookie in cookies: driver.add_cookie(cookie) (五)实现自动点赞...三、完整代码 #CSDN自动点赞 import time,json,random from selenium import webdriver #CSDN账号 account_CSDN = "你的账号...driver.get_cookies() with open("cookies.txt", "w") as fp: json.dump(cookies, fp) def dianZan(url_list): ''' 实现自动点赞功能
前言 对于我们平时的一些社区应用,如微博,知乎,掘金等应用点赞,评论这类功能是不可或缺的,例如点赞功能我们其实是可以通过 mysql 去做实现的,但是每次点赞都去实时改库可以想象一下当遇到一个热点文章例如...,前段时间大火特火的爆料某艺人日薪多少帖子,这个上千万乃至亿级的点赞量,这个时候我们再去实时改库的话就不那么恰当,今天我们介绍的主角是Redis的位图操作,接下来我们引出正题,来看一下位图是这么做到的;...字节的内容也就是2^32b; ❝2^(9(512)+10(1024)+10(1024)+3(8b=1B))=2^32b ❞ 应用场景: 用户签到 用户在线状态 统计活跃用户 各种状态值 自定义布隆过滤器 点赞功能...点赞功能 我这里的处理方式是异步改库,点完赞之后异步修改数据库,不要求实时处理结果其实可以用定时任务去批量改库(需要存一定时间内的 postId 和 userId 索引关系); @Override public...一个简单的位图实现点赞等功能就实现了,大家一个举一反三哈,玩法还是很多的,大家也可以根据自己的需求去做优化,希望可以对大家有帮助,有不对的地方希望大家可以提出来的,共同成长。 ❞
领取专属 10元无门槛券
手把手带您无忧上云