0

現在、管理者からのフォーム データを検証するアプリケーションを作成しています。

私が見る限り、これを行うには2つのオプションがあります。

同じ URL への GET および POST リクエスト

GET /admin/category/newHTML フォームを表示して新しいカテゴリを作成する

POST /admin/category/new有効な場合は、検証に合格するまで、送信されたデータと関連するエラーとともに HTML フォームをリロードするだけです。ただし、ユーザーが更新すると、ブラウザからデータを再送信するように求められます。

異なる RESTful URL への GET および POST

GET /admin/category/newHTML フォームを表示して新しいカテゴリを作成する

POST /admin/categoryPUTDELETEリクエストも処理できます。検証が失敗し、ユーザーがリダイレクトされた場合GET /admin/category/new、セッション フラッシュでエラーと以前の入力の両方を保持してもよろしいですか? ユーザーが複数のブラウザ ウィンドウで複数の編集を送信するとどうなるでしょうか。以前の入力が正しいフォームに添付されていることを確認するにはどうすればよいですか。

私が尋ねる主な理由は、Magento または WordPress で複数のアイテムを更新しているときに、他の Windows の更新に関連する複数のフラッシュ メッセージが 1 つのウィンドウに表示されることです。では、どのオプションが最適ですか?または維持するのが最も簡単ですか?

4

1 に答える 1

0

POST-redirect-GETデザイン パターンを使用することをお勧めします。

POST-Redirect-GET、または GET-After-POST は、Web サーバーが HTTP POST 要求の処理を終了した直後に Web ブラウザーがページにリダイレクトされる、一部の Web アプリケーションで使用される設計パターンです。これにより、ユーザーがフォームを送信した後、ユーザーがフォームを再送信せずにページを更新したり、ページに戻って参照したりできるため、使いやすさが向上します。

個人的には、これによりコードがよりクリーンになり、保守が容易になることがわかりました。

于 2013-10-13T17:56:54.337 に答える