我在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