我有一個討論控制器,我想要一個遠程鏈接的編輯動作,允許AJAX調用在頁面上呈現部分內容(而不是重新路由到一個全新的「編輯」頁面Jquery&Rails 3:Link_to遠程編輯動作
我的問題是我已經在控制器中設置了所有文件(我認爲是必需的),但討論顯示頁面上的鏈接將瀏覽器重定向到新頁面,而不是鏈接到控制器上的動作和相應的edit.js.erb文件。我想知道我的代碼在哪裏出錯了。
這裏是討論控制器的代碼:
class DiscussionsController < ApplicationController
include DiscussionsHelper
def create
...
end
def show
...
end
def edit
respond_to do | format |
format.js
end
end
end
我會希望將調用js.erb文件edit.js.erb(我已經與警報剛剛填寫,現在 - 這一次通過鏈接正確的,我打算用jQuery代碼來填充它渲染編輯部分,我想:
alert("hello");
的那個的link_to我已經把節目頁是:
<div class="discussion_overview">
<h1><%= @discussion.title %></h1>
<div class="edit_disc">
<%= link_to "Edit", :url => {:action => "edit", :id => @discussion}, :remote => true %>
</div><br>
正如我所說的,我認爲這會召喚edit.js .erb文件,然後我可以填寫一個適當的代碼。然而,link_to鏈接,而不是:
http://localhost:3000/discussions/54?remote=true&url[action]=edit&url[id]=54
任何想法,我做錯了什麼?
UPDATE下降的URL => {}成爲:
<%= link_to "Edit", :action => "edit", :id => @discussion, :remote => true %>
沒有解決方案,而不是僅僅改變了重定向到:
http://localhost:3000/discussions/54/edit?remote=true
,而不是做一個AJAX調用編輯動作..
感謝您的意見。我不認爲這是事實 - 我放棄了:url => {},但現在重定向仍然存在,在本例中爲http:// localhost:3000/discussions/54/edit?remote = true,這是'一頁..任何想法? – jay
你確定你在使用Rails 3嗎? – tybro0103
yes - Rails 3.0.9 – jay