0

URL パラメーターを にマージしたいのform_tagですが、パラメーターが上書きされるため、パラメーターが何であるかを指示できないことがわかりました。params を渡す目的は、フィルタリングと順序付けの変数を提供することです。そのため、それらを URL に表示し、非表示にしないようにします。

私が最も近いのはこれを行うことです:

form_tag( :controller => 'assets',:action => 'index', :params => params.merge(:order => 'name'), :method => :get) do

問題は、:getメソッドが実際にはメソッドとしてではなく、単に別のパラメーターとして渡されるため、POST.

私も次のことを試しましたが、これもうまくいきません。

form_tag(params.merge(:order => 'name', :method => :get) do

パスは正しいのですが、URL パラメータ&の形式がおかしくなっています。これは、パラメータの先頭に .

action="/assets?commit=Filter&order=name&utf8=%E2%9C%93" method="get"

パラメータの上書きの別の例を次に示します。次のコードは、フォーム コードの基になる要素を生成しますが、params は削除されます。

form_tag(url_for(:order => 'name'), :method => :get) do

送信時にパラメーターが渡されない、基礎となるコード:

action="/asset_ratings?order=name"
4

1 に答える 1

0

私の経験では、フォーム内で「非表示」の入力タグを使用するのが通常の方法です。

http://apidock.com/rails/ActionView/Helpers/FormTagHelper/hidden_​​field_tag

于 2013-03-03T21:28:38.603 に答える