【问题标题】:Mongoose schema + nodejs猫鼬模式 + nodejs
【发布时间】:2020-09-18 16:19:16
【问题描述】:

我是 mongodb 的新手,我遇到了麻烦 我无法从我的 mongo 数据库中获取数据

const mongoose = require('mongoose');

const Team = new mongoose.Schema({
    name: String,
});

const MatchsSchema = new mongoose.Schema({
    begin_at: Date,
    number_of_games: Number,
    name: String,
    tournament: {
        name: String,
    },
    opponents: {
        type: [Team],
        default: undefined
    },
});

const Matchs = mongoose.model('matchs', MatchsSchema);

module.exports = Matchs;

我正在尝试使用此代码进行访问,女巫返回我的“数据”:

console.log(element.opponents[0]);

data returned

但是当我想用 .name 访问时,值是未定义的

console.log(element.opponents[0].name);

数据库架构:db

我的数据库中有一个名为“teams”的集合。 有什么问题?我想我没那么远......

【问题讨论】:

    标签: node.js mongodb mongoose nosql mongoose-schema


    【解决方案1】:

    这可能是一个忽略,但尝试...

    console.log(element.opponents[0].opponent.name);
    

    【讨论】:

    • element.opponents[0].opponent 已经把我送回 undefined 所以这也不起作用。感谢回复
    • 您的描述中console.log(element.opponents[0])提供的图像有一个名为opponent的字段,其中包含一个字段名为name的对象...
    • 我尝试了一些新的东西并且成功了,那就是关于“团队”的架构
    • 您是否为您的Team 定义使用了interface
    【解决方案2】:

    db answer

    我的架构不正确,修改后效果很好

    【讨论】:

      猜你喜欢
      • 2020-08-27
      • 2016-08-05
      • 1970-01-01
      • 1970-01-01
      • 2012-02-02
      • 2021-06-01
      • 2021-09-21
      • 2015-05-20
      • 2013-01-25
      相关资源
      最近更新 更多