【问题标题】:How to create efficient following - follower mechanism in Node.js如何在 Node.js 中创建高效的追随者机制
【发布时间】:2018-11-24 17:09:00
【问题描述】:

我有一个 Node.js 应用程序,具有简单的关注机制(允许用户获取他/她关注的人的最新文章)。

我实现了这一点,我创建了一个名为关注者的数组,其中包含关注特定用户的所有用户的用户 ID。要获取新闻提要,我只需在每个用户的关注者数组中使用 forEach,以查找其中哪些包含登录用户的 ID。如果找到,则应以 JSON 格式检索这些用户的所有帖子。这目前可行,但我相信随着越来越多的用户注册,获取提要将成为一项更繁琐的任务,从而减慢提要页面的加载速度。

纠正这个问题的最佳方法是什么,并构建以下机制?

注意:我的应用使用 Express、Mongoose 和 PUG 进行模板化。

【问题讨论】:

  • 追随者和追随者有点类似于好友机制...你可以关注我这个答案stackoverflow.com/questions/50363220/…
  • 这个帖子有点晚了 xD。你能分享一下你从你关注的用户那里获取帖子的代码吗?我一直在尝试在我的应用程序中实现类似的功能,但我无法想出代码哈哈。

标签: javascript node.js mongodb express


【解决方案1】:

您需要创建一个用户模型。而如果你使用的是 mongodb,则需要使用 mongoose.Schema。首先你必须 npm install mongoose。然后你需要像这样创建你的用户对象:

const mongoose = require("mongoose");

var UserSchema = mongoose.Schema({
    username:{
        type: String,
        //unique: true,
        trim: true,
        minLength: 1,
        required: true
    },
    name:{
        type: String,
       // unique: true,
        trim: true,
        minLength: 1,
        required: true
    },
    email:{
        type: String,
        //unique: true,
        trim: true,
        minLength: 1,
        required: true,
        validate:{
            validator: validator.isEmail,
            message: '{VALUE} is not a valid email'
        }
    },
    password:{
        type: String,
        required: true,
        minlength: 4
    }
});

我建议您寻找一些 MEAN 应用教程以获得更多帮助。

【讨论】:

  • 我有一个用户模型。我在询问用户之间的有效关注。检查我的代码:this repo
猜你喜欢
  • 1970-01-01
  • 2011-09-07
  • 2012-09-03
  • 2011-03-22
  • 2021-02-18
  • 1970-01-01
  • 1970-01-01
  • 2019-07-03
  • 1970-01-01
相关资源
最近更新 更多