目前,用户使用邀请ID进入我的注册页面
示例:http://www.mysite.com/user/register/50e203eb4d37bdfd22000042
页面加载和表单加载等......一切都很棒。然后,我做了一些后端验证,如果验证失败,我会使用消息和表单数据调用res.render:
res.render('user/register', {
messages: messages
, form: form
});
这一切都按预期工作,但是当渲染发生时,它会将用户返回到:
http://www.mysite.com/user/register(缺少invite_id)
如何使用res渲染传递URL参数?
如果我这样做:
res.render('user/register/50e203eb4d37bdfd22000042', {
messages: messages
, form: form
});
它实际上正在寻找那个50e203 ....文件并给我404未找到
谢谢!
答案 0 :(得分:3)
您是否可能会将res.render()
与app.get()
混淆?看起来你正试图在第二个例子中指定路线:res.render('user/register/50e203eb4d37bdfd22000042'...
- 但res.render没有指定路线,你需要app [METHOD],其中app是一个快速实例。
为了处理对/ user / register / someinvite的GET请求,请使用:
app.get('/user/register/:invitation', function(req, res, next) {
// in here you can access the invitation id with req.params.invitation
res.render('user/register');
});