更新:我的問題得到回答,但我寫了一篇博客文章正是細節我如何着手這樣做:http://lathamcity.com/posts/ajaxInRails.html基於從阿賈克斯
我有一個頁面,顯示的東西的清單基於Ruby對象。我的目標是創建一個Ajax調用來獲得一個新的Ruby對象,然後基於此更新列表。
我認爲這樣做,這是用諧音。我使用代碼中的Rails實例變量使整個列表成爲部分文件。然後我希望Ajax調用將相應的實例變量設置爲新列表並重新渲染部分。
這是最終目標,但現在我想做的是,我只是設置一個實例變量爲一個字符串一個很基本的版本,然後顯示的字符串。
所以在我的div,我有:
<% form_tag :action => :go , :method => :get, :remote => true do %>
<%= submit_tag "Go" %>
<% end %>
<div id="test"><%= render(:partial => 'test') %></div>
有一個在views/interface
文件夾(在我的控制器的名稱)一個_test.erb文件,只有下面一行的內容:
<%= @test %>
然後在我的控制器,
def go
@test = "Hello You"
render :update do |page|
page.replace_html "test", :partial => "test"
end
end
當我跑,我得到:Missing template interface/update, application/update
我不知道很多關於render :update
,我發現它在谷歌上的例子。
我在做什麼錯,是造成這個問題,我該如何解決?我是以正確的方式去做這件事還是有更好的方法來做到這一點?