在Express中创建USER表

时间:2018-04-09 14:43:01

标签: node.js mongodb express passport.js

我是Express和NodeJS的新手(不到一周),我有一个无趣的问题。

背景

我使用Express和Passport for Authentication制作了一个REST API(这只是一个带有用户名和密码的基本身份验证,我在请求中得到了一个令牌)。

我想拥有像Instagram或Facebook这样的用户可以获得一些信息(姓名,生日等)的内容,并且可以发布文本。

  

型号/ Account.js

 import mongoose from 'mongoose';
 const Schema = mongoose.Schema;
 import passportLocalMongoose from 'passport-local-mongoose';

 let Account = new Schema({
   email: String,
   password: String
 });

 Account.plugin(passportLocalMongoose);
 module.exports = mongoose.model('Account', Account);

问题

我不知道是否应该为我为身份验证创建的模型添加字段(只有电子邮件和密码),或者我应该创建一个单独的表,例如我的数据库中的USERS(我知道它&#39) ; sa JSON文件而不是数据库但不知道技术名称。

如果有,请在此提供一些提示或关键字,以便我自己谷歌。

提前多多感谢:)

3 个答案:

答案 0 :(得分:2)

我认为您应该添加该字段是您为身份验证创建的现有模型,因为如果您创建了另一个模型,则必须在您的情况下重复数据,这是电子邮件和密码,这没有任何意义,它也会导致问题和混淆以获取或管理两个表中的数据,所以我更喜欢您在为身份验证创建的相同模型中插入字段

答案 1 :(得分:0)

我倾向于为您的用户模型重用您的帐户mongoose模型。

原因是您已经捕获了emailpassword,这通常会存储在user模型中。

您可以将其他字段添加到您已有的字段中。

答案 2 :(得分:0)

我认为您应该考虑account身份验证模型的一般架构,并在所有身份验证案例中使用架构。我更喜欢将其他字段添加到存在的模型中。