【发布时间】:2016-08-22 16:55:57
【问题描述】:
我正在尝试使用 mongoose 使用 MEAN 堆栈创建一个简单的注册表单。这是我的 models/dbSchema.js
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var User = new mongoose.Schema({
FirstName: String,
LastName: String,
City : String,
Email : String,
Userid : String,
Password: String
});
module.export = mongoose.model('user', User);
这是我的 server.js
var express = require('express');
var app = express();
var bodyParser = require('body-parser');
var jwt = require('jsonwebtoken');
app.use(express.static(__dirname + "/public"));
// configure app to use bodyParser()
// this will let us get the data from a POST
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/Regis_module');
var Userschema = require('./models/dbSchema');
app.post('/regi',function(req,res){
var schema = new Userschema();
schema.Firstname = req.body.Fname;
schema.Lastname = req.body.Lname;
schema.City = req.body.city;
schema.Email = req.body.email;
schema.Userid = req.body.userid;
schema.Password = req.body.password;
schema.save(function(err) {
if (err)
res.send(err);
res.json({ message: 'Record Inserted', Firstname: req.body.firstname, Lastname: req.body.lastname, city:req.body.city, email:req.body.email,
userid:req.body.userid, password :req.body.password /*, fbId : req.body.fbId*/ });
});
});
app.listen(3000);
console.log("listening to port 3000");
在本地主机上,在提交表单时,名字和姓氏不存储在数据库中。城市、电子邮件、用户名和密码存储正确。
我怎样才能正确地将所有东西存储在数据库中,请帮助我?
【问题讨论】:
-
确保你从 req.body 中获取名、姓是否正确?
-
你能把 HTML 表单贴出来吗,我认为有些东西不合适
-
问题可能是您没有在请求中获得
Fname和Lname的值。尝试记录 req.body 并查看它打印的内容。
标签: angularjs node.js mongodb mongoose mean-stack