如何渲染另一个控制器中的JS.ERB文件?

时间:2010-09-10 06:56:14

标签: javascript jquery ruby-on-rails

我不太明白我的代码有什么问题 - 它甚至导致我的服务器挂机。

我需要做的是让控制器返回一个JS脚本,该脚本在执行时会将渲染的部分附加到我的$(“。评论”)

# test.html.erb
$.getScript("/test");

# controller
  wants.js do
    render :partial => "/shared/activity"
  end

#/shared/activity.js.erb
$("#reviews").append("<%= escape_javascript(render(:partial => /shared/activity )) %>");

我怀疑我在控制器中要求渲染的方式有问题。事实上,它引发了各种奇怪的错误。

2 个答案:

答案 0 :(得分:4)

由于您同时拥有activity.js.erbactivity.html.erb,因此如果您指定要呈现的内容,则可能会有所帮助:

# test.html.erb
$.getScript("/test");

# controller
wants.js do
  render :partial => "/shared/activity.js.erb"
end

#/shared/activity.js.erb
$("#reviews").append("<%= escape_javascript(render(:partial => '/shared/activity.html.erb' )) %>");

答案 1 :(得分:2)

你称自己偏袒自己。所以你有一个无限循环。