質問

データを送信する前に、ユーザーの確認が必要なフォームを作成しています。フォームデータの処理方法についてのかなりのビット情報を表示する必要があるため、別々の確認ページが必要です。Pyramidのフォーム間でデータを渡すためのPythonic Wayがあるかどうか疑問に思いました。

フォームの送信ユーザーに確認ページにアクセスします。したがって、確認のためのビューには、request.POSTに格納されているフォームデータがあります。ユーザーが確認ページに「送信」をヒットすると、このデータのすべてを最終的なビューに渡すためのクリーンな方法があるかどうか疑問に思いました。パラメータの辞書に確認されたブール変数を追加したいと思います。

役に立ちましたか?

解決

これはピラミッド固有の回答ではありませんが、この問題に対する2つの一般的なアプローチは次のとおりです。

  1. データをセッションに保存します。
  2. 確認ページに非表示のフォームとしてデータを保存し、「確認済み」で再送信します

    ステートレスな方法なので、2の方がずっと好きです。まったく同じフォーム処理ロジックを使用して、「確認済み」のPOST変数の存在を確認するだけで、実行するアクションと表示するビューを決定できます(つまり、「確認してください」ビュー、または処理と「処理済み」ビュー。)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top