0
我正在嘗試構建捐贈表單。我的代碼如下 server.js架構不是構造函數
const express = require('express');
const bodyParser = require('body-parser');
var {mongoose} = require('./db/db.js');
// var {Form} = require('./models/form.js');
var {Form} = require('./models/schema.js');
var app = express();
app.use(bodyParser.json());
app.get('/', function(req, res) {
res.send('ok');
});
//private
app.get('/form', (req, res) => {
mongoose.model('Form').find((err, form) => {
res.send(form);
});
});
//makes new member
app.post('/form', (req, res) => {
var newMember = new Form({
firstName: req.body.firstName,
lastName: req.body.lastName,
email: req.body.email,
phoneNumber: req.body.phoneNumber,
donation: req.body.donation,
shirt: req.body.shirt
});
newMember.save().then((doc) => {
res.send(doc);
}, (e) => {
res.status(400).send(e);
});
});
app.listen(3000,() => {
console.log('Listening on port 3000.');
});
和表單模型
const mongoose = require('mongoose');
var Schema = mongoose.Schema;
var formSchema = new Schema({
firstName: {
type: String,
required: true,
minlength: 1,
trim: true
},
lastName: {
type: String,
required: true,
minlength: 1,
trim: true
},
email: {
type: String,
required: true,
minlength: 1,
trim: true
},
phoneNumber: {
type: Number,
trim: true,
minlength: 7,
required: false
},
donation: {
type: Number,
required: true
},
shirt: {
type: Boolean
}
});
var form = mongoose.model('Form',formSchema);
module.exports = {form};
當我運行的GET請求,我得到數據庫中的所有數據,但是當我發送POST請求我得到錯誤「TypeError:Form在app.post(.../server/server.js:22:19)」不是構造函數 「。我如何解決這個錯誤?我認爲這個錯誤來自於我如何調用新窗體,但是我對代碼做的所有調整似乎都無法解決它。