データベース値を作成および編集/更新するための大量のフォームが含まれる新しい nodejs アプリを開始しました。私の質問は次のとおりです。指定されたデータが無効な場合、フォームエントリを再入力するにはどうすればよいですか?
例: 誰かがログインを試みます。資格情報が間違っている場合は、次のようなものを使用してログイン ページを再度表示します。
res.render('sessions/new')
つまり、ユーザー名には要求データが入力されていません。これを簡単かつきれいに達成する方法を考えていました。レールには似たようなものがないのでform_for
、手動で実装する必要があると思いますよね? 私の最初のアプローチは、リクエストの本文/パラメーターをローカルとして関数にバイパスし、次のrender
ように jade テンプレート内で値を設定することでした。
// In controller/route
res.render('sessions/new', req.body)
// In template
input(type='text', name='username', value=locals.username)
より良い、または目立たない解決策はありますか? 上記の例が機能し、実装が非常に簡単であることを意味します。これは、無効なフォーム フィールドにエラー クラスを追加する場合などにも役立ちます。ウェブ上で実際に何かを見つけることができませんでした。
前もって感謝します!