我试图在成功提交添加用户表单后呈现我的管理仪表板页面。插入用户时执行以下代码:
app.get('/insert-user',function(req,res,next){
var context = {};
pool.query("INSERT INTO user (`fname`, `lname`, `email`, `password`,`timestamp`,`company`) VALUES (?,?,?,?,NOW(),?)",
[req.query.fname, req.query.lname, req.query.email, req.query.password, req.query.company],
function(err, result){
if(err){
console.log(err);
next(err);
return;
}
res.render('adminDash',context);
});
});
记录已成功插入表中,但页面仍停留在填充的表单上,并且不呈现 adminDash
。 adminDash
Handlebars 包含以下内容:
<h1>Admin Dashboard</h1>
<p><a href="http://18.219.103.143:3000/add-user">Add a User</a></p>
<p><a href="http://18.219.103.143:3000/edit-delete-user">Edit/Delete a User</a></p>
<p><a href="http://18.219.103.143:3000/add-admin-user">Add Admin User</a></p>
<p><a href="http://18.219.103.143:3000/edit-delete-admin-user">Edit/Delete Admin User</a></p>
<p><a href="http://18.219.103.143:3000/admin-login">Generate Report</a></p>
addUser
表单包含以下内容:
<form id="userForm">
<fieldset>
<legend>Add User</legend>
<p>First Name: <input id="fname" type="text" name="fname"/></p>
<p>Last Name: <input id="lname" type="text" name="lname"/></p>
<p>Email: <input id="email" type="text" name="email"/></p>
<p>Company: <input id="company" type="text" name="company"/></p>
<p>Password: <input id="password" type="text" name="password"/></p>
<button type="button">Attach Signature</button>
</fieldset>
<input id="addUser" type="submit" name="add" value="Add User" onclick="addRow()" />
</form>
<script src="script.js"></script>
我的渲染位置是否错误?它尝试呈现的页面是否有问题?谢谢!
最佳答案
尝试这样做
models.User.create(function({
//Your Query goes here
})
.then(function(result){
res.render('',{
result:result
});
}).catch(function(err){
console.log(err);
})
and in your ADmin Dashboard try to call this Result in a forEach loop
<% result.forEach(results) %>
关于html - MySQL INSERT 使用表单后页面未呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50077765/