将参数传递给'.js.erb'模板

Nit*_*eti 15 ruby-on-rails erb ruby-on-rails-3

我想在Rails3应用程序中将一些参数传递给我的Javascript模板我用respond_to块尝试的是:

 respond_to do |format|
      format.js({:id=>params[:id]})
    end
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

 respond_to do |format|
      format.js(params[:id])
    end
Run Code Online (Sandbox Code Playgroud)

我是否被迫将id作为js模板的实例变量来使用?如何将变量传递给模板?

dim*_*uch 23

它有用吗?

respond_to do |format|
  format.js { render "action", :locals => {:id => params[:id]} }
end
Run Code Online (Sandbox Code Playgroud)

"action"是你的动作/模板名称(索引,显示等)


小智 15

作为替代方案,您可以在控制器中定义@variable,并且您应该能够在js.erb模板中访问它.然后,您不需要将变量作为参数传递.