1
我努力工作,貓鼬的填入,但不斷收到此錯誤:MissingSchemaError的貓鼬的填充方法
/node_modules/mongoose/lib/connection.js:625
throw new MongooseError.MissingSchemaError(name);
^
MissingSchemaError: Schema hasn't been registered for model "Users".
我的代碼只需用基本填入功能實驗。它看起來像這樣:
我定義的模式:
var user = mongoose.Schema({
userName: String
});
var client = mongoose.Schema({
fk_user: { type: mongoose.Schema.ObjectId, ref: 'Users' },
name: String
});
我創建模型:
var UserModel = mongoose.createConnection('localhost','fixDB').model('Users', user);
var ClientModel = mongoose.createConnection('localhost','fixDB').model('Clients', client);
我救了一個實例:
var user1 = new UserModel({userName: 'issimo'});
user1.save(function(err){
if (err) console.log(err);
var client1 = new ClientModel({fk_user:user1._id,name:'co'});
client1.save(function(err){
if (err) console.log(err);
console.log('done');
})
});
到目前爲止好。我的數據庫有兩個文件。
現在我使用填充我的客戶端來發現關聯的用戶的用戶名。
ClientModel.findOne().populate('fk_user').exec(function(err, c) {
if (err) { return console.log(err); }
console.log(c.fk_user.userName);
});
我得到了上述錯誤。我不知所措:我更新了我的貓鼬,並嘗試了許多不同的代碼排列 - 我在猜測(並希望)我忽略了一些非常基本的東西。有很多SO問題非常相似,但沒有一個恰好適合。
非常感謝。
這是否真的解決了這個問題? – Askdesigners