javascript - länge - title tag wordpress




Wie man ein Schema der Mungo-Datenbank erhält, das in einem anderen Modell definiert ist (2)

Sie können Modelle an anderer Stelle direkt mit Mungo definieren:

require('mongoose').model(name_of_model)

Um das Schema in Ihrem Beispiel in albums.js zu erhalten, können Sie Folgendes tun:

var SongSchema = require('mongoose').model('Song').schema

Dies ist meine Ordnerstruktur:

+-- express_example
|---- app.js
|---- models
|-------- songs.js
|-------- albums.js
|---- and another files of expressjs

Mein Code in der Datei songs.js

var mongoose = require('mongoose')
, Schema = mongoose.Schema
, ObjectId = Schema.ObjectId;

var SongSchema = new Schema({
name: {type: String, default: 'songname'}
, link: {type: String, default: './data/train.mp3'}
, date: {type: Date, default: Date.now()}
, position: {type: Number, default: 0}
, weekOnChart: {type: Number, default: 0}
, listend: {type: Number, default: 0}
});

module.exports = mongoose.model('Song', SongSchema);

Und hier ist mein Code in der Datei albums.js

var mongoose = require('mongoose')
, Schema = mongoose.Schema
, ObjectId = Schema.ObjectId;

var AlbumSchema = new Schema({
name: {type: String, default: 'songname'}
, thumbnail: {type:String, default: './images/U1.jpg'}
, date: {type: Date, default: Date.now()}
, songs: [SongSchema]
});

module.exports = mongoose.model('Album', AlbumSchema);


Wie kann ich albums.js SongSchema bekannt machen, um AlbumSchema zu definieren


Um das Schema von einem registrierten Mongoose-Modell zu erhalten, müssen Sie speziell auf das Schema zugreifen:

var SongSchema = require('mongoose').model('Song').schema;






nosql