GraphQL 仅查询看不见的内容 - Schema Advice
Posted
技术标签:
【中文标题】GraphQL 仅查询看不见的内容 - Schema Advice【英文标题】:GraphQL query for only unseen content - Schema Advice 【发布时间】:2020-08-18 09:10:49 【问题描述】:我正在通过 AWS AppSync 构建一个 graphql 架构,并且对架构结构有疑问。我的应用程序将向用户显示新帖子,并让他们加入或传递。我正在尝试以一种仅向用户显示新帖子而不重复或至少在一定时间内不重复的方式进行构建。这类似于在 tinder 上滑动,如果您已经在他们上滑动过,他们不会再向您显示某人。有没有人知道如何在我的模式中构建它。我是否需要在用户模型中存储对所有已见帖子的引用,或者我应该将每次滑动存储为自己的模型,我应该如何构建查询?对此我不胜感激。
谢谢!
【问题讨论】:
【参考方案1】:假设帖子有创建时间,您可以跟踪他们看到的最后(最大创建时间)帖子,然后显示之后的任何内容。
但是想想如果他们离开应用程序 5 分钟、5 天或 5 周会发生什么......取决于您预计他们可能很快落后并不得不经历太多帖子的帖子数量较早的帖子。
一个想法是显示下一个最旧的帖子,基于他们查看的最新帖子的创建时间。除非自上次上线以来创建了 N 个帖子(您必须决定的阈值)。然后开始显示第 N - X 个帖子(其中 X 为 5 或 500,同样取决于数量),直到它们都被赶上。
您可以通过多种方式对其进行编程,这完全取决于您的用例,例如,您可能希望将“热门”帖子考虑在内,这些帖子的权重可能高于/在其积压中的其他帖子之前。
希望这会有所帮助。
【讨论】:
以上是关于GraphQL 仅查询看不见的内容 - Schema Advice的主要内容,如果未能解决你的问题,请参考以下文章