Rails 3 link_to (:method => :delete) not working

前端 未结 6 2022
抹茶落季
抹茶落季 2020-11-30 08:13

I\'m having trouble with my verbs in Rails...

viewing a page for a resource (Dog) which has_many (Fleas). Embedded in dog\'s show.html.haml

相关标签:
6条回答
  • 2020-11-30 08:27

    Check your <%= javascript_include_tag %> in application.html.erb

    Perhaps you are missing the "application" js

    It must look at least like

    <%= javascript_include_tag "application" %>
    
    0 讨论(0)
  • 2020-11-30 08:28

    Hi you can also try this:

    application.html.erb:

    <%= javascript_include_tag 'jquery_ujs' %>
    
    OR
    
    <%= javascript_include_tag "http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js", "jquery.rails.js" %>
    
    0 讨论(0)
  • 2020-11-30 08:37

    Rails 3 uses unobtrusive javascript now. In Rails 2.3, erb would just shove all that messy javascript right into the link itself, in an onClick event. Now the javascript has been moved out of the link, and into external js files. Make sure you have this in your layout:

    <%= javascript_include_tag :all %>
    

    If you do have this, there might be deeper problems keeping your javascript from running, but this is the place to start. Let me know how it turns out.

    0 讨论(0)
  • 2020-11-30 08:40

    check if application.html.erb

    <%= javascript_include_tag :application %>
    

    not as:

    <%= javascript_include_tag :default %>
    
    0 讨论(0)
  • 2020-11-30 08:44

    Here I am not using the javascript_include_tag :all, :application etc. I am using my own js files, with another custom name: javascript_include_tag :my_custom_file and I also had this issue. And I am not using '= require jquery' in the file, but javascript/jquery is working. I think Rails includes jquery by default. What I done is I changed the

    link_to "Logout", destroy_user_session_path, :method => :delete 
    

    to

     form_tag destroy_user_session_path, :method => :delete, :id => "logout_form" 
       link_to 'Logout', "#delete", :onclick =>  "$('#logout_form').submit();"
    

    Now its working fine.

    0 讨论(0)
  • 2020-11-30 08:45

    Looks like your link_to method isn't quite right. Try using this code instead:

      <%= link_to 'Kill Flea', [flea.dog, flea], :confirm => 'Sure?', :method => :delete %>
    
    0 讨论(0)
提交回复
热议问题