1

私は次のリンクを持っています:

<a href="/kits?resource_id=536" class="authorize spin" data-method="post" data-remote="true" id="use_it_link_171" rel="nofollow">

キットを作成した後、次のようにリンクを変更します。

<a href="/kits/536" class="authorize spin" data-method="delete" data-remote="true" id="use_it_link_171" rel="nofollow">

hrefとdata-methodを変更して、destroyアクションにサブミットするようにしました。ただし、POSTとして送信されたままです

なぜそれがあり、これを修正して「削除」として送信するようにするにはどうすればよいですか?

4

1 に答える 1

4

これは、Railsが控えめなJavaScriptを使用して、<a data-remote="xxx">またはなどのタグの動作を設定するためです<a data-method="xxx">(実際、Railsは、リンクがクリックされたときに送信される非表示のフォームをページに作成します)。これは、 rails.jsによるページの読み込み時に行われます。

したがってdata-method、リンクの属性を変更しても「遅すぎます」。リンクの動作は変更されません(このために非表示のフォームを更新する必要があります)。rails.jsコードを掘り下げてその方法を見つけることもできますが、ページに2つのリンク(1つはとdata-method="post"、もう1つはとdata-method="delete")を作成し、CSSを使用して有用なリンクのみを非表示/表示することをお勧めします。

于 2012-09-10T15:18:23.450 に答える