ほとんどできました!しかし、私には問題があります.Controllerファイルには次のものがあります:
def show
@user = User.find(params[:id])
@posts = @user.posts.paginate(page: params[:page])
end
次に、ファイルに次のコードがありますshow.html.erb
。
<div class="span8">
<%= render 'follow_form' if signed_in? %>
<% if @user.posts.any? %>
<h3>Microposts (<%= @user.posts.count %>)</h3>
<div id='posts'>
<div class='page'>
<ol class="microposts">
<%= render @posts %>
</ol>
</div>
</div>
<% end %>
</div>
このファイルの最後に、チュートリアルから取った Javascript コードがあります: https://github.com/amatsuda/kaminari/wiki/How-To:-Create-Infinite-Scrolling-with-jQuery
同じフォルダーに、次のファイルがありますindex.js.erb
。
$("#articles").append("<div class='page'><%= escape_javascript(render(@users)) %></div>");
$("#posts").append("<div class='page'><%= escape_javascript(render(@posts)) %></div>");
部分的_posts.html.erb
にこれを持っています:
<div class='article'>
<%= image_tag(user.picture_url, :width => 50) %>
<%= link_to user.name, user %>
<% if current_user.admin? && !current_user?(user) %>
| <%= link_to "delete", user, method: :delete,
data: { confirm: "You sure?" } %>
<% end %>
</div>
最初のものはすでに私のファイルindex.html.erb
で動作しています。問題は 2 番目のコード部分にあります。部分をレンダリングしようとすると@post
、次のログが表示されます。
**
'nil' is not an ActiveModel-compatible object that returns a valid partial path.
Extracted source (around line #2):
1: $("#articles").append("<div class='page'><%= escape_javascript(render(@users)) %></div>");
2: $("#posts").append("<div class='page'><%= escape_javascript(render(@posts)) %></div>");
**
その部分をどのようにレンダリングできますか?
どうもありがとう:D