我正在尝试创建一个发送邮件的应用程序。它在表单按钮的单击上获取用户输入(收件人、主题、消息)发送邮件,并将该邮件存储在 mongodb
前端
<form>
<span>
to :<input type='text' >
</span>
cc :<input type='text' >
</span>
bcc :<input type='text' >
</span>
<span>
subject :<input type='text' >
</span>
<span>
message :<input type='text' >
</span>
</form>
后端
to = 'sender@gmail.com',
cc = 'sender@gmail.com',
bcc = 'sender@gmail.com',
subject = 'A project proposal',
message = 'the body of your mail',
etc...
架构
const mongoose = require('mongoose');
const UserSchema = new mongoose.Schema({
收件人:{类型:字符串,},抄送:{类型:字符串,},密件抄送:{类型:字符串,},密件抄送:{类型:字符串,},主题:{类型:字符串,},消息:{类型:字符串,},附件:{类型:字符串,},日期:{类型:日期,默认:Date.now},
});
const Mail = mongoose.model('Mail', UserSchema);
module.exports = 邮件;
api
const Mail = require('../models/Mail');
// Home Page
router.get('/', forwardAuthenticated, (req, res) => res.render('home'));
// Mail
router.get('/mail', ensureAuthenticated, (req, res) =>
res.render('mail', {
user: req.user,
mail: req.mail
})
);
router.post('/mail', (req, res) => {
const { to, cc, bcc, subject, message, attachment, account } = req.body;
let errors = [];
if (!name || !subject || !message || !account) {
errors.push({ msg: 'Please enter all fields' });
}
if (errors.length > 0) {
res.render('register', {
errors,
name,
subject,
message,
account
});
} else {
const newMail = new Mail({
to,
cc,
bcc,
subject,
message,
attachment,
account
});
newMail
.save()
.then(mail => {
req.flash(
'success_msg',
'mail sent'
);
})
.catch(err => console.log(err));
}
})
module.exports = router;
我该怎么做呢?