我正在为我的健身房管理项目创建一个存在列表,在主页上,用户必须输入他的电子邮件,以验证他的存在,如果用户的会员身份,存在是有效的,但我不知道如何做到这一点。
这是会员模型
const mongoose = require('mongoose');
const membershipSchema = new mongoose.Schema({
credit:{
type:String,
required:true
},
isActive:{
type:Boolean,
default:true,
},
expiresAt:{
type:Date,
min:'2022-12-07'
},
user:
{
type:mongoose.Schema.Types.ObjectId,
ref:'User',
required:false,
}
})
module.exports = mongoose.model("Membership",membershipSchema);
'
下面是用户模型:
const mongoose = require('mongoose');
const userSchema = new mongoose.Schema({
name:{
type:String,
trim:true,
required:true
},
email:{
type:String,
trime:true,
required:true,
unique:true
},
address:
{
type:String,
required:true,
},
phone:
{
type:String,
required:true,
}
})
module.exports = mongoose.model("User",userSchema);
下面是我用来查找用户成员资格的代码
'
exports.findMembership = async (req,res) =>{
const query = {};
if(req.body.email)
{
query.email = req.body.email
}
const user = await User.find(query).select("_id")
if(userId)
{
query.user = userId;
Membership.find(query,(err,membership)=>{
if(err)
{
res.status(400).json({error:JSON.stringify(err)})
}
res.json(membership)
}).populate('user');
}
//return res.status(404);
}
'
我尝试通过它的电子邮件获取第一个用户,它的工作,但当我尝试在同一函数中的第二个请求,它返回什么HomePagePOSTMAN PLZ帮助我需要得到这个周末完成
1条答案
按热度按时间xbp102n01#
您正在设置用户变量,但针对userId变量检查if条件。您应将findMembership函数更改为以下内容:
}