MongoDB - 根据用户名显示不同的内容

时间:2013-07-06 14:24:17

标签: javascript mongodb mongoose

我想实现一个小应用程序,用户可以自己注册,注册后他们可以将项目添加到待办事项列表中。基本上我正在寻找关于如何使用MongoDB后端(Mongoose)和node.js / expressjs服务器处理这种情况的想法/教程。我需要确保拥有帐户的每个用户只能看到他们的待办事项。

我找到了一个关于如何为MongoDB(http://blog.mongodb.org/post/32866457221/password-authentication-with-mongoose-part-1)实现身份验证的非常好的教程,但这并没有告诉我如何处理用户登录后发生的事情。我应该开始加载不同的JS模块验证成功后?

我的另一个想法是针对每个待办事项创建用户ID(可能不是最佳选项)。我是MongoDB的新手,我来自MySQL背景,因此我习惯了各种JOIN等,但我不确定这在NoSQL世界中有多大意义。

感谢。

更新

另一个想法是为每个用户创建用户名/密码,允许他们连接到数据库并根据用户名创建集合,因此每个用户都有自己的集合......?我不确定如何处理这种情况,所以我仍然愿意接受建议:)

1 个答案:

答案 0 :(得分:2)

我认为您不应该直接使用MongoDB处理用户。 执行此操作的“标准”方法是使用后端服务器(例如NodeJ)处理它们。 它可以让您更好地控制用户可以做什么和不能做什么。 以下是如何使用Express执行此操作的一个很好的示例: how to implement login auth in node.js

我的建议是为用户创建一个集合,其中包含:

  • 字段用户名
  • 字段密码(已加密)

包含以下内容的待办事项集合:

  • 字段用户(用户的objectId)
  • 字段todo

这是一个非常基本的设置,但它是一个开始。