У меня есть две базы данных в моей программе. Один для сохранения пользователей и ролей, а другой для остальных.mongoose заполнить другую базу данных
1) Моя модель Пользователь имеет ссылку на Роли. Так что я могу заполнить роли, выполнив:
User.find({}).populate('local.roles').sort({ email: 1 }).exec(function (err, users) { ...
Это работает отлично, и я могу получить имя пользователя и его роли.
2) Когда я пытаюсь сделать то же самое, но с моделями, которые имеют подключение к другой базе данных, я получаю позорный ошибку:
«MissingSchemaError: схема не была зарегистрирована для модели .. .»
Это способ, которым я закодировать мои модели, когда они используют другое соединение:
var mongoose = require('mongoose');
// to define another mongoose connection
var configScrwebDB = require('./../../config/scrwebDatabase.js');
var scrwebDBConnection = mongoose.createConnection(configScrwebDB.url);
var aseguradoSchema = mongoose.Schema({
nombre: { type: String },
abreviatura: { type: String },
rif: { type: String },
direccion: { type: String }
});
module.exports = scrwebDBConnection.model('Asegurado', aseguradoSchema);
3) это то, что мне делать, чтобы «заполнить» некоторое поле в моем запросе (и тот, который не с выше ошибки):
var query = Riesgo.find({ cia: filtroObject.ciaSeleccionada });
query.populate('asegurado');
query.sort("codigo");
query.select("codigo fechaInicio estado moneda");
query.exec(function (err, riesgos) { ...
Конечно, это в другом " js 'file; и я выполняю свои «требования» и т. д., чтобы импортировать мои модели; и т. д.
Как я уже говорил, я могу заполнить, когда модели используют соединение по умолчанию «по умолчанию».
Любые идеи, как я должен исправить это, будут оценены ... Я пропустил здесь кое-что очевидное?
Спасибо и до свидания ...