我是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文件而不是数据库但不知道技术名称。
如果有,请在此提供一些提示或关键字,以便我自己谷歌。
提前多多感谢:)
答案 0 :(得分:2)
我认为您应该添加该字段是您为身份验证创建的现有模型,因为如果您创建了另一个模型,则必须在您的情况下重复数据,这是电子邮件和密码,这没有任何意义,它也会导致问题和混淆以获取或管理两个表中的数据,所以我更喜欢您在为身份验证创建的相同模型中插入字段
答案 1 :(得分:0)
我倾向于为您的用户模型重用您的帐户mongoose模型。
原因是您已经捕获了email
和password
,这通常会存储在user
模型中。
您可以将其他字段添加到您已有的字段中。
答案 2 :(得分:0)
我认为您应该考虑account
身份验证模型的一般架构,并在所有身份验证案例中使用架构。我更喜欢将其他字段添加到存在的模型中。