3

現在、ユーザーは招待 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 render で URL パラメータを渡すにはどうすればよいですか?

私が行った場合:

res.render('user/register/50e203eb4d37bdfd22000042', {
    messages: messages 
    , form: form 

});

実際にその50e203 ....ファイルを探して、404が見つかりませんでした

ありがとう!

4

1 に答える 1

4

あなたはおそらくと混乱res.render()していapp.get()ますか?2番目の例でルートを指定しようとしているようです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');
});
于 2013-01-02T03:33:36.240 に答える