Rails 3 / jquery – 使用ajax渲染部分的制表符

使用Rails 3和jquery,我正在尝试为我的post#show页面设置一个简单的3选项卡导航,单击时将_post _comments和_related partials渲染到视图中。

目前,这些部分没有自己的控制器动作。

什么是最干净的Rails处理这些ajax调用的方法?

我试过这个,但它不起作用:

邮政控制人:

def tab respond_to do |format| format.js end end 

展后视图:

  'tab'}, :remote => true %> 

/views/posts/tab.js.erb

 $('#postshow').html(""); 

但是,如果我这样做,当我尝试打开我的Track Show页面时,我会遇到这个错误“没有路由匹配{:action =>”tab“,:controller =>”posts“}”

我认为我为tab定义了一个应该渲染tab.js.erb的动作…但更重要的是,这似乎有点笨拙,只需在三个部分之间切换。

任何帮助深表感谢。 谢谢。

你的行动在于PostsController,所以你应该写:

 <%= link_to "Comments", {:controller => "posts", :action => "tab"}, :remote => true %> 

好的,我知道了。 只需要将资源添加到routes.rb …认为这部分只是神奇地发生了。

把它放在routes.rb中

 resources :posts do ... member do get 'tab' end end 

现在它找到路线并呈现javascript。

话虽如此,如果有人阅读这篇文章并且可以指出一种更简洁的方式来设置渲染部分的ajax链接,那将是超级甜蜜的。