能不能给个思路 大伙

2016-02-04 17:10:29 +08:00
 xush
该怎么设置权重...
用户发文章,防止用户发文章刷屏,控制在展示页面上每页最多只会出现该用户发的两篇文章...
不限制用户发文章数目..
2794 次点击
所在节点    PHP
6 条回复
sin30
2016-02-04 18:33:20 +08:00
什么需求!!!不好好做垃圾内容过滤,弄个这需求!!
直接给文章加审核状态,默认发布未审核,通过自动或者人工过滤之后再展示不行吗?

要是沿着你的思路走,之后分页怎么办?
lecher
2016-02-04 21:50:41 +08:00
这个需求确实奇怪,比如用户刷了两天,那么第一页用户 A 只显示两篇,第二页呢?还显示用户 A 发布的文章吗。
如果每一页同一个用户的文章都最多显示两条,那么文章列表的时间序就是乱的,可能用户连发十篇,第五页才能把用户 A 最早发布的显示出来?

先把需求理清楚吧。
如果非要做这个需求,只是单纯的限制显示频率,不能考虑在一条 SQL 语句里面取出来,考虑一下按用户分别取。很多社区按 tag 抽取文章的模型都可以加这样的限制。
或者做其它 spam 策略,比如设置一个发布时间 spam 参数,发布时间扣去这个 spam 参数,比如连发 10 条,从第三条开始,十分钟内每发一条就触发 spam ,每次累加时间参数 60 分钟,之后在写入文章表的时候,发布时间减去这个 spam 时间,当他连续发布十条之后,第十篇文章的发布时间就是七小时之前。

个人觉得做好这种内容审查策略,在文章发布的时候就确定排序比较好,否则在读取列表的时候做排序计算会浪费比较多的时间,毕竟大部分文章类型的产品业务,读取的频率还是大于写入频率很多的。
czk1997
2016-02-05 02:19:54 +08:00
一般正常的用户不会发那么多刷屏吧……
最简单方法让用户(或者审核)输入个数字,数字最大的两个的列出来就可以……基本上由用户决定出现那两篇……
newkedison
2016-02-05 09:11:22 +08:00
分两种情况, 一种是优秀文章的展示, 这个需要人工审核, 不存在被刷屏的可能, 一种是随机展示, 这种情况每个用户一两篇足够了, 再加上顶, 踩, 举报三个功能, 让读者来帮助过滤垃圾信息
movtoy
2016-02-06 09:46:58 +08:00
人工惩罚
ershisi
2016-02-25 17:21:35 +08:00
根据用户发帖的访问量 回帖量 和发帖数进行计算。然后给每一个帖子加权重字段可行吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/255404

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX