我在mongo數據庫中有一個用戶集合,它有一個公司字段,它是對另一個名爲Company的集合的引用。 我將該公司分配給用戶。當我嘗試打印公司領域內的數據時,它返回我:未定義。NodeJs/Mongoose - 無法從對象ID中找到數據
這是我使用的代碼,
console.log('company: ' + req.user.company);
if(req.user.company)
console.log("LOGGED IN USER" + "\n Email:" + req.user.username + "\n Psw: " + req.user.password + "\n Role: " + req.user.role + "\n Company: " + req.user.company.name);
,這是在終端上的應答:
company: 59aab09745db5532c4321742
LOGGED IN USER
Email:[email protected]
Psw: $2a$10$Z7h3ikaDJLhLXMotV.odaerGf5RFRXxDmlVxCFdvTaL48WalNIwRy
Role: admin
Company: undefined
,你可以看到第一端子線示出了分配給該公司ID特定的用戶,但是當我嘗試打印該公司的名稱時,它返回未定義。
這是該公司的集合項,它的名稱是場爲我打印上面
我在哪裏錯了對象ID是一樣的嗎? 如果您需要更多信息,請讓我知道 謝謝
*「我在哪裏錯了?」*我們怎麼知道?這裏沒有執行查詢的代碼。這實際上是您需要向我們展示的唯一代碼,它甚至不在此處。\ –
@NeilLunn如果您注意,他正在打印'req.user.company',它顯示爲ObjectId,而不是對象本身。他沒有填充該領域。我認爲這很明顯,即使代碼不明確。 – lilezek
你的評論說:'在這裏,因爲如果這是一個缺少「填充」的問題,那麼字段參考值將在那裏,而不是未定義。它在那裏,看看他的代碼'公司:59aab09745db5532c4321742'。你是盲人還是隻是傾斜? – lilezek