link_to_remote的替代方法:在rails3中更新

时间:2012-03-23 12:39:11

标签: ruby-on-rails ajax link-to-remote

我正在将我在第2版中开发的rails代码转换为rails 3。

之前我使用link_to_remote函数创建了一个链接。在那里我展示了使用':update'选项在div字段上设置页面。

 <%= link_to_remote @processes_tree[x]["name"],:update => "toprightdiv", :url => { :action => "editproduct", :id => @processes_tree[x]["id"]}%>

现在在rails中link_to_remote不可用,所以我在其中使用了link_to.But:更新选项不可用。

所以我无法显示div字段中的页面。当我点击链接时,链接会显示一个新页面。在rails3中有任何替代方法。请帮我解决问题。

2 个答案:

答案 0 :(得分:2)

这是关于rails中不显眼的javascript的一般性问题(谷歌搜索该短语会得到你需要知道的全部内容)。

通常,您需要使用link_to并将:remote设置为true。然后通过在.js视图中处理响应或等效来执行更新。

您也可以从此截屏视频中受益,该演示文稿展示了此更改的基本原理:

http://railscasts.com/episodes/205-unobtrusive-javascript

答案 1 :(得分:1)

:update不支持link_to :remote => true选项。

你要么必须

  • 使用legacy plugin
  • 自己编写JS / AJAX,而不是使用:remote => true
  • 使用render :update { |page| p.replace_html ... }