我正在使用一个nodejs项目,我正在使用postgreSQL。该项目与为雇主创建时间表有关。我已经创建了显示时间表和项目的路线。
app.route(/api/timesheet)
现在,我想为此项目创建用户模型,并希望为特定用户添加特定时间表。这意味着,具有特定用户标识的用户只能查看与该用户相关的时间表信息。 我可以用mongodb做到,但我想用postgreSQL做。 在此任何提前感谢您的帮助。
答案 0 :(得分:1)
好吧,我已经创建了用户阵列,我有两个用户
const users = [
{
"id": "userId1",
"email": "user1@mail.com",
"password": "password"
},
{
"id": "userId2",
"email": "user2@mail.com",
"password": "password2"
}
];
然后我按照你上面的描述创建了路线
app.route('/api/timesheet')
.get(function (req, res) {
let id = req.params.id;
let user = users.find(user => user.id = id);
res.json(user);
});
路由不会变化,路由始终相同,只是根据您作为参数传递的内容提供不同的数据。 如果你的查询中的GET请求有"?userId = userId1"这会给你第一个对象作为回应,如果你传递第二个" userIs2",它会给你第二个。
当我在nodejs项目中使用postgreSQL时,我总是使用sequelize
您可以像这样定义用户架构
module.exports = function(sequelize, DataTypes) {
return sequelize.define('user', {
email: Sequelize.STRING,
password: Sequelize.STRING
});
}
然后您将调用User.findById(id)
,它将为您指定id为课程
sequelize是一个功能强大的库,因此您应该在使用之前查看文档