文章置顶的实现方案

问题描述:正在开发一个博客系统,需要实现对一篇文章的置顶,然后前台将这篇(也可能是多篇)设置为置顶的文章显示在最上面。我想的是新增一个字段,用来判断是否是置顶文章,但是前台怎么显示出来呢? 循环文章的时候判断?

相关代码:开源地址:https://github.com/ruibaby/halo

阅读 8.1k
5 个回答

改变数组,先删除当前数据,在数组头部添加,重新拼接字段试试
slidImgArr.splice($(this).attr("data-id"),1);
slidImgArr.unshift($(this).attr("data-img"));

你是后端的话,你返回给前端的时候,你把置顶的放在数组的第一位,然后返回给前端,前端尽量不去做这些处理,因为很多置顶的时候后端处理会方便很多

后端处理好给你,你就依次展示。

这种需求,前后端都能处理。那肯定是后端希望前端处理,前端希望后端处理。
我个人觉得,从网站整体性能的角度来说,一些简单计算(数据格式化)、排序之类的操作,最好是前端来做:
1、后端服务器有限,处理能力有限,把部分计算工作交给前端(终端用户的电脑),就能减少后端服务器压力,提高整体性能;
2、个人电脑配置越来越高,多做一点基本的计算,对于用户来说,基本是无感的,没有什么影响;
3、前端jquery不仅支持append,也支持insert,所以,遍历一遍就行;

文章如果一次全部发送到前端, 前端处理没问题
但是文章如果不是全部发送到前端,前端无法处理。只能有后端来做
文章到底有多少呢?现在少没问题,将来会不会涉及到分页呢?
如果是置顶的话,可能后边一个置顶权重要比前面置顶要高,所以数据库设计 置顶建议写为number
每次置顶都在当前类目下 最大值 + 1,不置顶就为默认为0,后端按照置顶字段大小排序即可

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题