web-dev-qa-db-ja.com

link_to deleteurlが機能していません

私は私のアプリでURLを削除するために次のlink_を持っています

<%=link_to "Delete",blog_path(@blog.id), :method => :delete, :class => "delete", :confirm => "Are you sure ?"%>  

動作していないようです。このURLをクリックすると、表示パスが表示されます。修正方法を教えてください。ありがとう。

20
felix

JQueryを使用していますか?もしそうなら、問題は、更新されたRails.jsファイルなしでjQueryを使用していることである可能性があると思います。

Rails.jsをここからダウンロードします: https://github.com/Rails/jquery-ujs/raw/master/src/Rails.js javascriptsディレクトリにドロップし、付属のRails.jsを上書きしますRailsのデフォルト。

それを含めるためにjavascriptインクルード行を追加します。

  <%= javascript_include_tag "Rails" %>

これをJqueryインクルードタグの後に置きます。プロトタイプを使用する予定がない場合は、javascriptのデフォルトを除外することもできます。

アプリケーションにjQueryUIを含めたところ、deleteがshowとして機能していることがわかりましたが、上記の解決済みの問題を実行した後です。

20
Sean Ahrens

これらの行がapplication.jsに表示されていることを確認してください。

 //= require jquery
 //= require jquery_ujs
17
Matoeil

Javaスクリプトがオンになっていることを確認してください。それ以外の場合は:method => :deleteRailsで表示されるのと同じように機能します。

5
klew

ブログにRESTfulルーティングを使用している場合は、次のように機能するはずです。

<%= link_to "Delete", @blog, :method => :delete, :confirm => "Are you sure ?"%>
4
clemensp

:methodの代わりに 'data-method'を試すことができます。

<%=link_to "Delete",blog_path(@blog.id), 'data-method' => :delete, :class => "delete", :confirm => "Are you sure ?"%> 

Jquery_ujs.jsで次のコードを確認できます。

// Handles "data-method" on links such as:
// <a href="/users/5" data-method="delete" rel="nofollow" data-confirm="Are you sure?">Delete</a>
4
rorra

link_todeleteメソッドで機能するためには、Rails jQuery用の邪魔にならないスクリプトアダプター が必要です。

  • あなたのGemfileが持っていることを確認してください

    gem 'jquery-Rails'

  • App/assets/javascripts /application.jsが持っていることを確認してください

    //= require jquery
    //= require jquery_ujs

  • App/views/layouts /application.html.erb

    <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
    <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>

    headタグ内。 Turbolinksを使用する予定がない場合は、'data-turbolinks-track' => trueセクションを削除してください。

あなたが使用する必要があります

<%=button_to "Delete",blog_path(@blog.id), :method => :delete, :class => "delete", :confirm => "Are you sure ?"%>  
0
thiagoh