как заселить в пн goose? - PullRequest
       10

как заселить в пн goose?

1 голос
/ 06 января 2020
var headSchema = new Schema({
  typename: String,
  headname: String,
  status: { type: Number, default: 1 }
});
var Head = mongoose.model("heads", headSchema);

var mgmtSchema = new Schema({
  headtype: String,
  type: { type: Schema.Types.ObjectId, ref: "Head" },
  datefrom: Date,
  dateto: Date,
  title: String,
  amount: Number,
  description: String,
  created_at: { type: Date, default: Date.now },
  updated_at: { type: Date, default: Date.now },
  status: Number
});

var HeadMgmt = mongoose.model("headmgmt", mgmtSchema);

HeadMgmt.find({})
  .populate({ path: "type", select: "headname" })
  .exec(function(err, result) {
    console.log(result);
  });

У меня есть две схемы, также ссылка на внешний ключ. Вторая схема имеет некоторое значение. Мне нужно отобразить списки в одной html таблице. Как можно напечатать заголовок из схемы головы?

1 Ответ

0 голосов
/ 06 января 2020

В mgmtSchema вам нужно изменить значение ссылки в поле типа с Head на heads, потому что вы использовали heads, чтобы настроить модель вашей головы следующим образом:

var Head = mongoose.model("heads", headSchema);

mgmtSchema должен быть таким:

var mgmtSchema = new Schema({
  headtype: String,
  type: { type: Schema.Types.ObjectId, ref: "heads" },
  datefrom: Date,
  dateto: Date,
  title: String,
  amount: Number,
  description: String,
  created_at: { type: Date, default: Date.now },
  updated_at: { type: Date, default: Date.now },
  status: Number
});

Результат вашего текущего заполненного кода будет примерно таким:

[
    {
        "_id": "5e13483dd62cd92e3c3e8dcd",
        "headtype": "headtype",
        "type": {
            "_id": "5e1347671b0bd339e0521139",
            "headname": "headname 1"
        },
        "title": "title",
        "amount": 123,
        "description": "description",
        "created_at": "2020-01-06T14:46:21.906Z",
        "updated_at": "2020-01-06T14:46:21.906Z",
        "__v": 0
    }
]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...