【发布时间】:2017-11-26 06:35:25
【问题描述】:
我正在构建一个应用程序,并且所有内容都已设置好并正常运行。我使用 rand-token 进行了一些修改,以便为用户配置文件、cmets 和帖子提供更短的 ID。
我能够将随机生成的令牌放入新的 ID 字段(用户的 uid),但我一直在试图找出在哪里放置一个函数来检查 uid 之前是否已经存在于数据库中护照写入数据库。我没有尝试通过在生成随机令牌的位置放置一个静态字符串来测试它,以查看如果存在两个 ID,mongo 或 passport 是否会自动出错。
所以我猜这是一个多部分的问题。
1) 在写入数据库之前,我究竟可以在哪里放置一个函数来检查是否存在 uid?
和
2) mongo 甚至护照会自动执行此操作吗?我找不到这种情况的文档。
如果这是重复的帖子,我很抱歉,我查看了其他类似的帖子,但找不到与我需要的相似的内容。
另外值得注意的是,我不是在谈论用户名。我说的是 uid,与用户名和 _id 分开。
【问题讨论】:
-
我对 MongoDb 或 Passport 都不太熟悉,所以在这里我可能会偏离常规,但您可以使用 Guids,en.wikipedia.org/wiki/Universally_unique_identifier。创建重复项是极不可能的,因此您不必测试重复项。您还可以在 MongoDb 中使用索引,最后但并非最不重要的一点是,这可能是您的问题的有趣读物 - 如果您想手动检查“uid” - 但可能会矫枉过正,quora.com/…。
标签: node.js mongodb express mongoose passport.js