0

4 가지 모델의 데이터를 하나의 테이블에 표시 할 수있는 내 앱용 작은 관리 페이지를 구축하고 있습니다. 열은 클럽, 사용자, 게시물, 댓글입니다.레일스는 여러 모델로 테이블을 페이지 매김합니다.

클럽에 has_many 명의 사용자가 있지만 has_many posts와 has_many comments가 있습니다. 제 질문은 admin_controller의 4 가지 모델 각각에 페이지 매김을 명시 적으로 추가해야합니까? 지금과 같은 방식으로 테이블의 상단과 하단에 페이지 목록이 생기고 페이지를 앞뒤로 이동할 수 있지만 모든 결과는 첫 페이지 (~ 9000 개의 결과)에 표시됩니다. 내 admin_controller에서

나는 내보기

<%= will_paginate @clubs %> 
<table> 
<% i = 0 %> 
<tr class="new-admin-top-row"> 
    <td><%= "Club Location" %></td> 
    <td>| <%= "Number of Signups "%> </td> 
    <td>| <%= "Number of Posts By Users"%> </td> 
    <td>| <%="Number of Comments By Users"%> </td> 
</tr> 
    <%= @clubs.find_each do |club| %> 
     <tr class="new-admin-row"> 
      <td class="new-admin-cell"><%= club.name %></td> 
      <td class="new-admin-cell f"><%= @users_array[i] %></td> 
      <td class="new-admin-cell s"><%= @posts_array[i] %></td> 
      <td class="new-admin-cell"><%= @comments_array[i] %></td> 
      <td class="new-admin-cell"><%= @elevates_array[i] %></td> 
     <% i+=1 %> 
     </tr> 
    <% end %> 
</table> 
<%= will_paginate @clubs %> 

답변

0

find_each 방법은 액티브 :: 관계 객체에서 작동하며 일괄 적으로 1000 개 개의 레코드를 가져에

@clubs = Club.all.paginate(page: params[:page], per_page: 50) 

있습니다. 그래서 이것이 문제가 될 가능성이 가장 큰 부분입니다. each으로 변경하면 문제가 해결 될 것입니다. 그게이었다 http://apidock.com/rails/ActiveRecord/Batches/find_each

+0

감사 :

현재 find_each에 대한 자세한 내용을보실 수 있습니다. 그러나 이제는 내 페이지가 표의 원시 텍스트를 서식이 지정되지 않은 표 자체 위에 표시합니다. 그래서 저는 모든 페이지에 두 번씩 모든 데이터를 넣었습니다. 한 번은 거대한 문자열로, 그리고 다시 원하는 테이블의 데이터로 나타납니다. 어떤 아이디어? [div를 숨기고 싶지만 원시 데이터가 div가 아닌 경우에만 나타납니다] – volx757

+0

왜냐하면'each'는 결국 객체를 반환하기 때문입니다. 그래서 당신은'='기호를 제거해야합니다. <% = @ clubs.each' – Humza

+0

아, 설명해 주셔서 감사합니다. – volx757