Turbo_frame 内のフォームは、2 回目の送信がブロックされます。
現在のページとフォーム アクションの両方が同じパスです。フォームを新しい場所にリダイレクトするか、エラー コードを返す必要があるようです: Turbo/pull/39。
すべてのインデックス ビューにフォームがあり、インデックス アクションに GET リクエストを送信します。これにより、URL クエリ パラメータに基づいてレコードがフィルタリングされます。これはうまくいきます。これは最新のRailsではできなくなりましたか? フォーム アクションの新しいルートを作成しないようにするために、ここで適用できる回避策はありますか?
これらはべき等なフィルター/検索要求であるため、GET メソッドです。フォームは、フィルター値を収集して送信する便利な方法です。このシナリオで Hotwire を使用する Rails がリダイレクトを主張するのは正しいですか、意図的ですか?
更新:
Turbo を使用する代わりに xhr としてフォームを送信すると機能します。local: false
フォームにとを追加data-turbo: false
します。次に index.js.erb を追加し、レンダリングされたパーシャルにdocument.getElementByID(<id of turbo frame>)
設定します。outerHTML
非推奨のujs機能が原因でこれが機能しなくなるかどうかはわかりません(おそらくmrujsが介入できます)。