请教诸位一个分页返回数据的问题

2022-06-17 09:54:32 +08:00
 Danswerme
有三种类型不同的数据存在不同的表中,根据前端传来的页数和每页数量返回这三种数据,三种数据在返回数据中的占比为每页数量 /3 ,如果某种数据的数量达不到每页数量 /3 ,则用其他两种数据补全不足的数量。

我琢磨了半天也不知道怎么做这个接口,v 友们有什么好点子嘛?
988 次点击
所在节点    问与答
9 条回复
rabbbit
2022-06-17 10:05:16 +08:00
三种都不够咋整?
剩下两种怎么补,缺失数量无法整除怎么办?

省事的解决办法:出三个接口前端自己调,不够的自己补.前端抗议就告诉他这是叫细粒度查询,减少了服务器压力和接口的耦合性,增强了扩展性便于复用,做了微服务放不到一起.
wqhui
2022-06-17 10:10:45 +08:00
三种不同类型的数据为什么要从一个接口出,而且这三种类型数据占比还不是固定的(补全的时候),应该改需求才对 doge
cnoder
2022-06-17 10:14:48 +08:00
让前端拼
hay313955795
2022-06-17 10:16:48 +08:00
如果传递过来的每页数量 不能被三整除咋办?多出来的这个 到底给谁呢?
Danswerme
2022-06-17 10:22:52 +08:00
@rabbbit
@wqhui
@cnoder
@hay313955795 其实我是前端😂,临时被抓来写 php 接口的。需求就是在小程序首页展示推荐的文章,但是文章有三种,每次分页返回的列表中要三种都有。 我问之前负责这块的老哥,他就给我这么说的,头痛啊。
wolfie
2022-06-17 10:25:41 +08:00
手动 count 3 个类型。

1 个类型 查不到当前页数,剔出。剩下 2 个类型对半分。
2 个类型 查不到当前页数,剔出。剩下 1 个类型填充。

各种情况 if else 恶心点,实现起来不难。
Danswerme
2022-06-17 10:30:46 +08:00
@wolfie 感谢🙏,有思路了
tangzui
2022-06-17 10:46:46 +08:00
只要不考虑优雅性。这种还是很好实现的
不要总想着有什么很完美的方法来搞
Danswerme
2022-06-17 11:06:10 +08:00
@tangzui 最后用楼上 v 友提供的思路写好了,的确有点丑陋....

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

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

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

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

© 2021 V2EX