MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Kunci Asing Validasi Mongoose (ref)

Saya terus googling selama satu jam terakhir, dan melihat sesuatu tentang ruang lingkup yang membuat saya berpikir. Kode berikut memperbaiki masalah saya.

//Doctors.js
var mongoose = require('mongoose');
var schema = mongoose.Schema({
  email: { type: String }
}
module.exports = mongoose.model('Doctors', schema);

//Patients.js
//var Doctors = require('./Doctors'); --> delete this line
var mongoose = require('mongoose');
var schema = mongoose.Schema({
  email: { type: String },
  doctor: { type: String, ref: 'Doctors' }
}
schema.pre('save', function (next, req) {
  var Doctors = mongoose.model('Doctors'); //--> add this line
  Doctors.findOne({email:req.body.email}, function (err, found) {
    if (found) return next();
    else return next(new Error({error:"not found"}));
  });
});
module.exports = mongoose.model('Patients', schema);

Meskipun ini adalah perbaikan cepat, sama sekali bukan perbaikan yang jelas (setidaknya bagi saya). Masalahnya adalah ruang lingkup variabel.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. kenaikan otomatis dalam node-mongodb-native menggunakan koleksi counter

  2. Pengecualian Waktu Habis Kurs Mongo

  3. Apa itu aturan pluralisasi Mongoose (Nodejs)?

  4. Dokumen tersemat kueri MongoAlchemy

  5. Bagaimana cara mengintegrasikan MongoDB dengan Solr?