更新:过了一段时间.但后来决定不使用Mongoose.主要原因是我们无法真正想出在使用mongo和
javascript时使用ORM的很好的理由.
我一直在尝试用Mongoose创建一个数据库/模型,它基本上只是用户名唯一的用户数据库.听起来很简单,但由于某种原因,我一直无法做到这一点.
我到目前为止是这样的:
var mongoose = require('mongoose').Mongoose,db = mongoose.connect('mongodb://localhost/db');
mongoose.model('User',{
properties: [
'name','age'
],cast: {
name: String,age: Number
},//indexes: [[{name:1},{unique:true}]],indexes: [
'name'
]
/*,setters: {},getters: {},methods: {}
*/
});
var User = db.model('User');
var u = new User();
u.name = 'Foo';
u.save(function() {
User.find().all(function(arr) {
console.log(arr);
console.log('length='+arr.length);
});
});
/*User.remove({},function() {});*/
它不行.数据库创建好了,但用户名不是唯一的.任何帮助或知道我在做错什么?
解决方法
您需要定义模式.尝试这个: (
var mongoose = require('mongoose').Mongoose,db = mongoose.connect('mongodb://localhost/db'),Schema = mongoose.Schema;
mongoose.model('User',new Schema({
properties: [
'name',[...]
}));