Flask-WTForms-2つのルート、フォームを2回呼び出す必要がありますか?

ダニエルダロシャ
  • フォーム付きのページを表示するルートがあります。
  • フォームを送信すると、別のルートが呼び出され、フォームが処理されます
  • 次に、このルートは前のルートにリダイレクトされ、最初のページが表示されます

私の質問は、両方のルートでフォームを呼び出す必要があるのは正しいですか?

@route('/')
def home():
    form = MyForm()
    return render_template('index.html', form = form)

@route('/process_form')
    form = MyForm()
    if form.validate_on_submit():
        #  process form data here
    return redirect(url_for('home')

どうしますか?同じページにフォームを送信してそこでフォーム処理を行うこともできますが、最終的にはページ上に複数のフォームがあり、複数の処理ルートがあるため、面倒になる可能性があります。

ありがとう。

チョン
  1. フォームの送信は、GETではなくPOSTで送信される可能性があります。
  2. Webページに複数のフォームがある場合、各フォームには独自のモデル(つまり、クラス)とフォームのインスタンス化がある可能性があります。したがって、それについて「乱雑」であってはなりません。
  3. 乱雑さはフォームやルートではなく、Webページが1つの場所に非常に多くのフォームを持っている理由です。

個人的には、GETリクエストとPOSTリクエストの両方を1つのルートにまとめた方がはるかにクリーンであることがわかりました。

@route('/', methods=['GET', 'POST'])
def home():
    comment_form = CommentForm()
    subscription_form = SubscriptionForm()
    if subscription_form.validate_on_submit():
        # process subscription form
        redirect(url_for('home')
    if comment_form.validate_on_submit():
        # process comment form
        redirect(url_for('home')
    return render_template('index.html', subscription_form=subscription_form, comment_form=comment_form)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Flask WTForms FieldList with BooleanField

分類Dev

Flask、wtformsは空のフォームをポストバックします

分類Dev

FlaskのWTFormsでDecimalRangeFieldを検証する

分類Dev

FlaskとFlask-WTFormsを使用してフォームをループしている間、csrfラベルを非表示にする方法はありますか?

分類Dev

Flask wtformsネストされた変数

分類Dev

Flask WTForms:DataRequiredとInputRequiredの違い

分類Dev

編集フォームにWTFormsとFlaskを事前入力します

分類Dev

Flask / WTFormsで繰り返しサブフォームの数を変えてフォームを作成する

分類Dev

Flask-WTFormsの2つの日付フィールドを比較するためのフィールド検証

分類Dev

WTForms:同じページに2つのフォームがありますか?

分類Dev

wtforms + flask今日の日付をデフォルト値として

分類Dev

Webアプリケーション:Flask-html-wtforms:2つの送信ボタンを備えたフォーム

分類Dev

Flask-jQueryを使用して次のフォームフィールドに移動するWTForms

分類Dev

Flask WTForms:フィールド値が送信されない

分類Dev

Flask、WTForms:StringFieldを_一時的に_非表示にする方法はありますか?

分類Dev

WTForms-flask:フォームフィールド名とデータを辞書に整理する

分類Dev

Flask-WTFormsと非表示フィールド

分類Dev

Flask、MongoEngine、WTForms-フォームレンダリングのエラー

分類Dev

Flask / WTForms-フォームをインラインにするにはどうすればよいですか?

分類Dev

Flask WTFormsはvalidate_on_submit()で常にfalseを返します

分類Dev

Flask-WTFormsのrender_kwでFlask-Babelgettextを使用する方法は?

分類Dev

同じフォームへのリダイレクトでFlask-WTFormsフォームからチェックボックス値を渡す

分類Dev

Flask-WTForms CSRF保護をAJAXで使用する方法?

分類Dev

Python Flask WTForms:「無効な選択」を返す動的SelectField

分類Dev

Flask WTForms:少なくとも1つのフィールドの検証InputRequired

分類Dev

AJAXが入力されたFlaskForm(Flask-WTForms)SelectFieldの検証

分類Dev

Flaskのカスタマイズ-WTFまたはWTForms

分類Dev

FlaskとWTFormsを使用したフォームのリンクに関する問題

分類Dev

Flask、Jinja2、およびWTForms-すべてのURLに対して1つの方法ですか?

Related 関連記事

  1. 1

    Flask WTForms FieldList with BooleanField

  2. 2

    Flask、wtformsは空のフォームをポストバックします

  3. 3

    FlaskのWTFormsでDecimalRangeFieldを検証する

  4. 4

    FlaskとFlask-WTFormsを使用してフォームをループしている間、csrfラベルを非表示にする方法はありますか?

  5. 5

    Flask wtformsネストされた変数

  6. 6

    Flask WTForms:DataRequiredとInputRequiredの違い

  7. 7

    編集フォームにWTFormsとFlaskを事前入力します

  8. 8

    Flask / WTFormsで繰り返しサブフォームの数を変えてフォームを作成する

  9. 9

    Flask-WTFormsの2つの日付フィールドを比較するためのフィールド検証

  10. 10

    WTForms:同じページに2つのフォームがありますか?

  11. 11

    wtforms + flask今日の日付をデフォルト値として

  12. 12

    Webアプリケーション:Flask-html-wtforms:2つの送信ボタンを備えたフォーム

  13. 13

    Flask-jQueryを使用して次のフォームフィールドに移動するWTForms

  14. 14

    Flask WTForms:フィールド値が送信されない

  15. 15

    Flask、WTForms:StringFieldを_一時的に_非表示にする方法はありますか?

  16. 16

    WTForms-flask:フォームフィールド名とデータを辞書に整理する

  17. 17

    Flask-WTFormsと非表示フィールド

  18. 18

    Flask、MongoEngine、WTForms-フォームレンダリングのエラー

  19. 19

    Flask / WTForms-フォームをインラインにするにはどうすればよいですか?

  20. 20

    Flask WTFormsはvalidate_on_submit()で常にfalseを返します

  21. 21

    Flask-WTFormsのrender_kwでFlask-Babelgettextを使用する方法は?

  22. 22

    同じフォームへのリダイレクトでFlask-WTFormsフォームからチェックボックス値を渡す

  23. 23

    Flask-WTForms CSRF保護をAJAXで使用する方法?

  24. 24

    Python Flask WTForms:「無効な選択」を返す動的SelectField

  25. 25

    Flask WTForms:少なくとも1つのフィールドの検証InputRequired

  26. 26

    AJAXが入力されたFlaskForm(Flask-WTForms)SelectFieldの検証

  27. 27

    Flaskのカスタマイズ-WTFまたはWTForms

  28. 28

    FlaskとWTFormsを使用したフォームのリンクに関する問題

  29. 29

    Flask、Jinja2、およびWTForms-すべてのURLに対して1つの方法ですか?

ホットタグ

アーカイブ