Jestem nowy w węźle node.js i MongoDB. Używam biblioteki Mongoose do uzyskiwania dostępu do MongoDB za pomocą node.js.Usuń osadzony dokument w mangecie
Mam dwa schematy, książkę i autora. Autor należy do książki i książki ma wielu autorów.
mam to w moich schematów:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var Book = new Schema({
title : String,
isbn : String,
authorId : [{ type: Schema.Types.ObjectId, ref: 'Author' }],
updated_at : Date
});
var Author = new Schema({
name : String,
updated_at : Date
});
mongoose.model('Book', Book);
mongoose.model('Author', Author);
mongoose.connect('mongodb://localhost/library');
Problem polega na tym, że kiedy usunąć dokument od autora, który jest osadzony w książce zostanie on usunięty bez sprawdzania integralności referencyjnej. Mój scenariusz jest taki, że jeśli dokument autora jest osadzony w książce, nie można go usunąć. Czy Mongoose automatycznie sprawdza dokument autora umieszczony w książce? Czy to możliwe? więc jak?
Nie, nie ma żadnych więzów integralności sprawdzanie wbudowany Można jednak dodać, że poprzez „usunąć” middleware jak w [Ta odpowiedź] (http:. // stackoverflow .com/a/14349259/1259510). – JohnnyHK