具体需求是这样的:
我开发了一个在线答题小程序,刷题有两种模式:随机刷题和顺序刷题,今天讨论的主题是顺序刷题模式,也就是题目的顺序是固定的
每次刷题的时候,有100道,甚至1000道题目,基本大部分时候,我可能只刷几十道题目,就有其他事情走开了,我下次进来是从头开始刷题还是上上次的地方接着往下刷题
这里面有两个方案:
1、每次从头开始刷题
2、每次从上面刷题的地方,接着往下做;
今天主要讨论的是第二个方案的实现逻辑,现在我总结下本文讨论重点,就是在顺序刷题模式下面,如果每次刷题的时候,接着上次做题的时候接着刷,同时要照顾到题库会有新题目不断加入。
请参考下图小程序截图,顺序答题点进去,开始答题
具体场景:
1、用户集合Profiles,里面主要字段信息是openid、userInfo,用于记录用户的相关信息
2、Question集合里面有1000条记录,现在我某次刷题做到20题,下次进来我希望从21题开始做。欢迎大家参与讨论
1
2
3
4
5
。
。
20
21
22
。
。
。1000
征集方案,可以增加新集合,方案不舍限定。欢迎大家在评论区,讨论。
新增个表。记录用户最后做的那道题的刷题模式和刷题id和相关参数 { "user_openid":"xxxx",//用户openId "last_q_id":"xxxxxxxxx",//最后题目id "last_mode":"SORT" ,//最后做题模式,顺序还是随机 "page_now":9, //做到第几页 //其他扩展参数 } 每次做完一道题更新这个值,这样就始终记录着用户「走开」最后做的那道题和模式 下次进入时载入就好了。