2017-08-18 12 views
0
<div class="container-fluid" id="manage"> 
<h2>Managing Users</h2> 

<table> 
    <tr> 
     <td></td> 
     <td><%= link_to "Add User", users_new_path, method: :get, class: "btn btn-primary" %> <br /> <!-- To go add-user-page --></td> 
    </tr> 
    <tr> 
     <td><button class="btn btn-danger navbar-btn"> Emails</button><br /></td> 
     <td><button class="btn btn-danger navbar-btn"> Delete</button><br /></td> 
    </tr> 

    <% @users.each do |user| %> 
     <tr> 
     <td><button class="btn btn-info"><%= user.email %></button></td> 
     <td><%= link_to "Del", users_delete_path(id: user.id), method: :delete ,class: "btn btn-info", data: { confirm: "You sure?" }%></td> 
     </tr> 

    <% end %> 

</table> 

</div> 

このファイルでは、削除アクションと新しいアクションが2回呼び出されます。 は、私は私を助けることができるlink_toタグがプロジェクトで呼び出されています

すべての答え( link_to :confirm displays popup twice Why is my Ruby on Rails link_to sending the action twice?。そしてなど)をスタックに応じてを試してみましたか?

編集 - Application.js

//= require jquery 
//= require bootstrap-sprockets 
//= require jquery_ujs 
//= require rails-ujs 
//= require turbolinks 
//= require_tree . 
+0

私はあなたの質問を理解していません。明確にしていただけますか?何が起こると思いますか、代わりに何が起こっていますか? – vijoc

+0

<%= link_to "Del"、users_delete_path(id:user.id)、メソッド::delete、クラス: "btn btn-info"、データ:{確認: "本当ですか? }%>が2回呼び出されます。データベースからユーザーを削除すると、エラーが発生します。 – Pinaev

+0

これは、JavaScriptの読み込み/イベントバインディングに関する問題を示唆しています。 'application.js'の内容を追加してください。コントローラーの操作も便利です。 – vijoc

答えて

0

最も簡単な解決策は、//require rails-ujs行を削除することです。

//= require jquery 
//= require bootstrap-sprockets 
//= require jquery_ujs 
//= require turbolinks 
//= require_tree . 
+0

ありがとうございました!あなたは命の恩人です! –

0

問題は、あなたのapplication.jsjquery_ujsrails-ujsの両方を持っているということです。彼らは両方とも&を実装して自動的にconfirmイベントをバインドしているため、2つのイベントが表示されています。この問題を解決するには、rails-ujsを削除する必要があります。

関連する問題