PHP 板


LINE

看板 PHP  RSS
※ 引述《tao2tw (smile_ting)》之铭言: : 有个问题想与各位前辈讨论, : 我们都知道 facebook 有 按"赞"的功能。 : 如果把一篇文章当做一个 table 中的item 。 : 姑且称之 Post item . : 该Post item 可能包含许多栏位 : owner_id , content , date , ... : 那麽如果要实作按赞功能, : 就需要新增一笔 like 栏位 到 Post Table : 如果有user C 针对该篇文章 "按赞" : 该 Post item 的 like 栏位 , 就会被 update , 并且增加 点赞人的user_id ? : 比如说原本该POST 按赞人数 已经有两人 "A,B" : 则ABC按下去之後 先读取 users = "A,B" : 接下来 users+=","+current_user_id : 将 "A,B,C" 回存 : 感觉上似乎有一点没效率。 : 但是直觉上的想法大概就是这样,不晓得前辈是否有更聪明的想法? : -- :



※ 发信站: 批踢踢实业坊(ptt.cc)
: ◆ From: 119.77.136.156 : → FMDream:我会选择在开一个表 post_item uesr_id is_like 03/24 14:56 : → kerash:这样设计会变成只要有一个人按赞其他人都会跟着变赞或者 03/24 14:57 : → kerash:别人按赞自己的纪录会被 update 掉吧 03/24 14:58 : → hSATAC:再开个表 原本表只记按赞数 03/24 15:04 : ※ 编辑: tao2tw 来自: 119.77.136.156 (03/24 15:22) : 推 kerash:我会用一楼的作法 03/24 15:32 刚好哄完小孩睡觉来回一下文… 我们公司的产品正好有类似的功能(叫做「棒」 XDD), 可以提一下我们是怎麽做的, 首先声明我的资料库颇弱,所以方式不一定是最好, 希望有其他前辈愿意出来指点一二 (其实这篇好像应该算是 Database 的范围?) 我们家的作法和推文的大大们所说的差不多, 一共有两个表,post / post_like (加上 reply / reply_liek 就是四个表了), post 纯记 like 数量, post_like 塞 post_id + member_id, 所以每次按赞就是: 1. 去查 post_like 的纪录,这个 user 有没有赞过这篇文章 2. 没有赞过,post_like 新增一笔 3. 新增成功的话,post 的 like += 1 展开版面上的文章时: 1. 取出可以被浏览的 post 2. 拿所有 post id + user id 去 post_like 拉 like 纪录 3. 穿插「棒」、「你说这真棒」、「你和 xx 人说这棒」之类的进文章尾 这样解应该是很基本的方式, 另外有个好处是 post_like 这张表根本就是 key-value pair, 很适合直接用 memcache 或 redis 直接从记忆体作掉(拉和塞都是) 然後定时 crontab 更新 post_like 就好 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 1.175.40.79







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:iOS站内搜寻

TOP