收藏
回答

使用云开发数据库,评论区里的用户都为ID,如何在读取评论的时候把用户的头像和名字从另一个集合拿来?

求助各位大佬!!!

评论区有很多评论,每条评论都大概是:{ userid:xxxxx , content:"这是一条评论" , sub:{ userid : yyy , content : "这是一条回复上一条评论的评论"} }

如何在查表的时候通过userid在用户账号信息表里把昵称和头像一起拿来?(聚合查询lookup能行吗?)

使用微信云开发数据库

回答关注问题邀请回答
收藏

1 个回答

  • 跨商通
    跨商通
    2022-08-23

    1、这么多级的套嵌,lookup不一定能行;

    2、建议改表结构,把头像和昵称与每一个userid保存在一起,同一节点吧。这点冗余不算什么。

    2022-08-23
    有用
    回复 3
    • Jellow
      Jellow
      发表于移动端
      2022-08-23
      可是如果不与用户信息表连表查询的话,万一用户修改个头像或者昵称,那么评论里的头像昵称都还是旧的呢……🤔
      2022-08-23
      回复
    • 跨商通
      跨商通
      2022-08-23回复Jellow
      各有优劣。我们就愿意让评论停留在当时的场景,保持当时的头像和昵称。你当时叫张三,改名了,还只显示张三。
      如果你一定要显示最新的,让用户在重新授权头像和昵称的时候,将库里的所有相关字段都更新一遍,也比用lookup更省事。
      2022-08-23
      1
      回复
    • Jellow
      Jellow
      发表于移动端
      2022-08-23回复跨商通
      好的谢谢
      2022-08-23
      回复
登录 后发表内容