will_paginate无法使用partial的无尽页面

我一直在关注无限页面上的railscast并且之前为will_paginate做了同样的事情,但是我遇到了错误,但是我尝试在我的特定情况下实现它。 will_paginate gems工作得很完美,就像我从浏览Chrome中的开发人员工具所看到的那样,jQuery调用dom也是如此。 问题在于返回什么 – rails不喜欢它。 这是一些代码:

videos.js.coffee

 jQuery -> if $('.pagination').length $(window).scroll -> url = $('.pagination .next_page').attr('href') if url && $(window).scrollTop() > $(document).height() - $(window).height() - 50 $('.pagination').text("Fetching more videos...") $.getScript(url) $(window).scroll() 

在我的views/users/index.js.erb

 $('.carousel').append(' ');  $('.pagination').replaceWith('');  $('.pagination').remove();  

在我的共享部分中,由users/index.erb.html呈现

    

这从我的开发日志中给出了以下错误:

 Completed 500 Internal Server Error in 15ms ActionView::Template::Error (Missing partial videos/video with {:locale=>[:en], :formats=>[:js, :html], :handlers=>[:erb, :builder, :coffee]}. 

所以我尝试使用与users/index.js.erb文件相同的代码创建views/videos/_video.js.erb partial,但它然后给出了以下错误:

  Rendered shared/_recentlyadded.html.erb (853.8ms) Rendered users/index.html.erb within layouts/application (1741.4ms) Rendered layouts/_header.html.erb (2.6ms) Rendered layouts/_footer.html.erb (0.0ms) Completed 200 OK in 1813ms (Views: 1801.0ms | ActiveRecord: 8.5ms | Sphinx: 0.0ms) Illegal instruction: 4 

正如你所看到的,它实际上并没有呈现_video部分。

如果它是相关的,我试图调用的实例变量@recently_added_videoapplication_controller定义,并且与partial和will_paginate

任何人都可以帮助弄清楚出了什么问题? 非常困惑! 谢谢…

没关系 – 我想通了。

问题出在这条线上

 $('.carousel').append( ' <%= j render(@recently_added_video) %>' ); 

在users / index.js.erb文件中。

我正在关注railscast,但是Ryan Bates将他的实例变量设置为渲染部分,所以他的代码可以工作,但是因为@recently_added_video不是局部的而且不会渲染一个,所以它返回了500错误,因为它有没有偏见。

我需要做的是实际渲染这样的部分:

  $('.jcarousel-skin-recent').append(' <%= j render ('shared/recentlyadded') %>'); 

希望能帮助其他跟随railscast的人,并且像我一样有问题。