如何检查一个对象是否已经创建?
How to check if an object has been already created?
您好,我想检查是否创建了一个对象。如果它已创建,则重定向到 id 页面,但如果未创建,则重定向到创建它的页面。
这是我的应用程序
app.get('/my',isLoggedIn,async (req,res)=> {
const safe= await Safe.find({});
if(safe===undefined){
res.redirect('/mysafe')
}
else {
res.redirect(`mysafe/${safe._id}`)
}
})
我认为它应该可以工作,但我遇到了转换错误
CastError:模型“Safe”的路径“_id”处的值“undefined”(类型字符串)转换为 ObjectId 失败
你只需要翻转你的条件并使用if(safe)
作为条件。如果对象已创建,则为 true,否则为 false。大致如下:
app.get('/my', isLoggedIn, async (req,res) => {
const safe= await Safe.find({});
if(safe){
res.redirect(`mysafe/${safe._id}`)
} else {
res.redirect('/mysafe')
}
})
您好,我想检查是否创建了一个对象。如果它已创建,则重定向到 id 页面,但如果未创建,则重定向到创建它的页面。
这是我的应用程序
app.get('/my',isLoggedIn,async (req,res)=> {
const safe= await Safe.find({});
if(safe===undefined){
res.redirect('/mysafe')
}
else {
res.redirect(`mysafe/${safe._id}`)
}
})
我认为它应该可以工作,但我遇到了转换错误 CastError:模型“Safe”的路径“_id”处的值“undefined”(类型字符串)转换为 ObjectId 失败
你只需要翻转你的条件并使用if(safe)
作为条件。如果对象已创建,则为 true,否则为 false。大致如下:
app.get('/my', isLoggedIn, async (req,res) => {
const safe= await Safe.find({});
if(safe){
res.redirect(`mysafe/${safe._id}`)
} else {
res.redirect('/mysafe')
}
})