我试图将用户数据发布到mongodb,但我得到一个错误:

`类型错误:用户.save不是一个函数——如何解决这个问题?

这是我的代码:

var

    express     = require('express'),
    app         = express(),
    bodyParser  = require('body-parser'),
    mongoose    = require('mongoose'),
    PORT        = process.env.PORT || 8080;



//connect to db 

mongoose.connect('mongodb://3gwebtrain:admsin@ds147975.mlab.com:47975/family');

app.use( bodyParser.urlencoded({extended : true }));
app.use( bodyParser.json() );


app.get('/', function( req, res ) {

    res.json({message:'works'})

});


var Schema = mongoose.Schema;

var User = new Schema({

    name:String,
    username:{type:String, required:true, index:{unique:true}},
    password:{type:String, required:true, select:false}

})


var apiRouter = express.Router();


apiRouter
    .get('/users', function( req, res ){

        res.send( "yet to get users!");

    })
    .post('/users', function( req, res ) {

        var user = User;

        user.name = req.body.name;
        user.username = req.body.username;
        user.password = req.body.password;

        user.save(function(err) {

            if( err ) {

                console.log( err ); //TypeError: user.save is not a function

            }

            res.send("user created!");

        })

    })


app.use('/api', apiRouter);


app.listen( PORT );
console.log( 'app listens at ' + PORT );

推荐答案

首先从模式创建模型:

 var UserModel = mongoose.model('User', User);

然后从用户模型中创建对象

 var user = new UserModel(req.body)

然后打电话

 user.save(function(){})

判断文件

Mongodb相关问答推荐

如何拉平mongo DB中的对象并在根目录中保存时有条件地重命名字段?

在一个视图中连接两个集合MongoDB;展开有什么作用?

Mongo $sort然后$group,顺序能保证吗?

MongoDB 按日期时间字段查询 1h 间隔

Mongodb,在一个查询中用正则表达式更新部分字符串

通过 docker 运行的 MongoDB 服务器无法互相看到(名称解析中的临时故障)

嵌套数组 $unwind 和 $group 在 mongoDB 中重新组合在一起

Mongo:投影不影响布尔值

如何在mongoDB中按嵌套文档分组( group by )

MongoDB 聚合 $divide 计算字段

使用 nodejs/mongoose 部分更新子文档

Mongoose:填充填充字段

如何在 Mongoose 中更新数组值

为多个日期范围聚合 $group

如何在mongoose中加入两个集合

指定在 mongodb .js 脚本中使用哪个数据库

使用 Node.js 将许多记录插入 Mongodb 的正确方法

使用 $in 进行不区分大小写的搜索

判断字段是否存在于数组的子文档中

mongo中的稀疏索引和空值