will_paginate gem を使用して Ajax 呼び出しを実装しようとしていますが、このガイドhttp://ramblinglabs.com/blog/2011/11/rails-3-1-will_paginate-and-ajaxを見つけました。私がよく知らないcoffeescriptが含まれているので、誰かが別の解決策を持っている場合はアドバイスしてください..
私のコードは次のとおりです
私の見解
<div class="container">
<div class="row">
<div id="userRecipes">
<%= render partial: 'userrecipes' %>
</div>
</div><!--/row-->
私の部分 (ユーザーレシピ)
<% @recipes.each do |r| %>
<div class="span3">
<div class="thumbnail">
<%= image_tag r.avatar.url(:myrecipes) %>
</div>
<h4><%= link_to r.dish_name, r %></h4>
<hr>
<p><%= truncate r.description, :length => 90 %></p>
<p><%= link_to "Edit Recipe", edit_recipe_path(r.id) %></p>
<p><%= link_to "Delete Recipe", recipe_path(r.id), :confirm => "Are you sure?", :method => :delete %></p>
<p><%= link_to "Add to favorites", {:controller => 'favourites', :action => 'create', :recipe_id => r.id}, {:method => :post } %></p>
</div><!--/span3-->
<% end %>
<%= will_paginate @recipes %>
更新された userrecipes.js.erb ファイル
$('#userRecipes').html('<%= escape_javascript(render partial: 'userrecipes') %>');
$.setAjaxPagination();
コーヒースクリプト
$ ->
$.setAjaxPagination = ->
$('.pagination a').click (event) ->
event.preventDefault()
loading = $ '<div id="loading" style="display: none;"><span><img src="/assets/loading.gif" alt="cargando..."/></span></div>'
$('.other_images').prepend loading
loading.fadeIn()
$.ajax type: 'GET', url: $(@).attr('href'), dataType: 'script', success: (-> loading.fadeOut -> loading.remove())
false
$.setAjaxPagination()
次のアンカー タグをクリックして次の結果セットを表示すると、ページはそのまま残り、新しいコンテンツは表示されません
コンソールを使用してエラーがあるかどうかを確認すると、出力は次のようになります
GET http://localhost:3000/my_recipes?page=2&_=1355055997639
ここで何か不足していますか?または、私のuserrecipes.js.erbファイルに問題がありますか?他のAjaxの例では、パーシャルをレンダリングするときにescape_javascriptを使用しているのを見たからですか?
編集
コンソールで応答を調べている間、ロードされる新しいレシピがロードされていることも示されていますが、ビューでは何も起こっていません
任意のポインタをいただければ幸いです
ありがとう