1
正如標題中所寫,我無法將link_to的方法更改爲:發佈。實際上,生成的html包含預期標記data-method="post"
,但它發送GET請求。無法將方法更改爲鏈接中的'發佈'到
<% @playlists.each do |pl| %>
<%= link_to new_entry_path(:music_id => @music.id, :playlist_id => pl.id), :method => :post do %>
<span><%= pl.name %></span>
<% end %>
<% end %>
這將生成以下HTML:
路線:
match 'playlist/:playlist_id/new_entry/:music_id' => 'entries#create', :as => :new_entry, :via => :post
點擊生成鏈接後:
No route matches [GET] "/playlist/1/new_entry/3"
提前感謝!
編輯:它工作如果我改變路線:via => :get
雖然,但那不是我需要的。
編輯:沒關係,我修好了。我有一個jQuery代碼來隱藏/顯示此菜單,並在其中的某個地方使用了event.stopPropagation,它意外地阻止了不引人注意的javascript將超鏈接方法更改爲發佈。
是的,我敢肯定,我已經安裝了jquery-rails 1.0.12 gem。另外,我在我的項目中還有其他的超鏈接發送非獲取請求,比如'<%= link_to'Destroy',播放列表,確認:'你確定嗎?',方法:: delete%>' – dcastro