此問題與this「類似」,但我要求替代(如果存在)。使用貓鼬列表收集項目
我在mongo shell中創建了一個db Nums
集合numbers
。
使用mongoose
作爲ODM我想訪問該集合並列出數字。
var mongoose = require('mongoose')
, Schema = mongoose.Schema;
mongoose.connect('mongodb://localhost/Nums');
mongoose.model('numbers', new Schema({value: Number}));
mongoose.connection.on('open', function(ref) {
console.log('Connected to mongo server.');
});
mongoose.connection.on('error', function(err) {
console.log('Could not connect to mongo server!');
console.log(err);
});
var nums = mongoose.model('numbers');
nums.find({}, function(err, data) {console.log(err, data, data.length);});
爲了訪問一個已經創建的數據庫/收藏我總是要經過一個mongoose.model
和new Schema
電話?這一步可以繞過嗎?
即使這一步必須寫一次,似乎如果我有一個非常大的模式,這將是非常繁瑣的,只是從mongo中拉出一個數據庫/集合。
有沒有解決這個問題的方法或這是唯一的途徑?
我只是試過這個......只需調用'mongoose.model('numbers',new Schema());'而不指定模式佈局。 – user1460015
@ user1460015你可以使用一個空的模式,但是你會失去很多Mongoose的功能,比如字段類型轉換。如果你不想使用這些功能,我對你爲什麼會使用貓鼬有點困惑。 – JohnnyHK
這只是偏好。如果我的模式看起來像這樣http://www.reddit.com/r/funny/.json,我將不得不利用字段類型轉換。看起來我可以打字某些字段,但我不必全部都做。 – user1460015