0

それぞれが削除可能であるべきプロモーションのリストを作成しています。ビューでは、プロモーションごとに、クリックされたときにコントローラーで削除アクションを実行する button_to ボタンを作成しました。ただし、FIRST ボタン以外はすべて正常に機能します。つまり、最初のボタンが機能しません。

プロモーションコントローラーで

  def delete
    flash[:success] = 'Your promotion has been successfully deleted!'
    redirect_to('/promotions')
  end

プロモーション ビューで

<% @promotions.each do |p| %>
   <tr>
     <td>
       .
       .
       .
       .
     </td>
     <td>  <%= button_to "Delete" , promotions_delete_path(params:      {promo_code: p.promo_code }),
     method: :post, class: "btn btn-danger btn-xs" %></td>

     <% end %>

なぜこれが起こっているのか本当にわかりません。最初のボタンを除くすべてのボタンで、ページがリロードされ、フラッシュが正常にレンダリングされます。javascriptの確認を使用しようとしたときに同じことが起こっていました-最初のものを除くすべてで機能するため、確認を削除して何かが変更されたかどうかを確認しましたが、まだこの問題があります. また、コントローラーを介していくつかのプロモーションを削除し、新しい「最初の」ボタンをテストしてみました.プロモーションが何であるかは関係ありません.リストの最初のボタンは機能しません. どんな助けでも大歓迎です!

4

1 に答える 1

0

メソッドがフォームを使用するという事実に関連していることが判明したため、button_toフォーム内にフォームがありました(フォーム内にあるフォームが関連しているとは知らなかったので、<%= @promotions.each %>投稿しませんでしたbutton_to)。私の問題。すべての「ボタン」が正常に機能するようになりました。link_tomethod: post

于 2015-05-13T18:22:18.103 に答える