8

我敢肯定,这是一个快速而简单的答案。我正在将 Rails 项目从版本 2 升级到版本 3,并根据 Rails 3 更新用 link_to 替换 link_to_remote 的负载。甚至像这样简单的东西:

<%= link_to "Check Time",
        {:action=>:get_time}, :remote=>true, :update=>'current_time' %>
<div id='current_time'></div>

似乎不起作用。请求(使用 get 方法)正常,呈现的 html 是:

<a href="/monitoring/get_time" data-remote="true" update="current_time">Check Time</a> 

Routes.rb 条目:

get "monitoring/get_time"

正如我所说,我确信这对我来说是一个非常明显的问题!

4

2 回答 2

17

:update新版本不支持该选项link_to :remote => true

你要么必须

  • 使用旧版插件
  • 自己编写 JS/AJAX 而不是使用:remote => true
  • 采用render :update { |page| p.replace_html ... }
于 2011-04-01T10:05:45.987 回答
7

:update参数没了。您需要使用 Unobtrusive JavaScript 自己处理 DOM 更新。另外,请确保您确实csrf_meta_tag在布局中包含了帮助程序。

我写了一篇关于在 Rails 3 中使用不显眼的 JavaScript的文章。

于 2011-04-01T10:05:15.530 回答