두 가지 종류의 대화가 시작되고 참가되었습니다. 가장 최신의 것부터 맨 아래의 가장 오래된 것까지 같은 스트림에서 함께 렌더링하고 싶습니다. 즉, 사용자가 시작했거나 사용자가 가입했는지 (예 : 다른 사용자가 시작했는지) 여부에 관계없이 가장 최신 대화가 맨 위에 오도록 인터 믹스되기를 원합니다. 내 컨트롤러에서동일한 스트림에서 두 개의 부분 중 가장 최신 부분을 렌더링합니다.
:
def conversations
@user = current_user
@joined_conversations = @user.received_meeting_requests.paginate(page: params[:page], :conditions => ['state = ?', 'replied'])
@started_conversations = @user.sent_meeting_requests.paginate(page: params[:page], :conditions => ['state = ?', 'replied'])
end
내보기에, 나는 다음과 같이 표현하고있다 :
<ol class="meetings">
<%= render @started_conversations %>
<%= render @joined_conversations %>
</ol>
<%= will_paginate @started_conversations %>
<%= will_paginate @joined_conversations %>
<% end %>
그래서 심지어 가장 오래된 시작된 대화가 최신 합류 대화 이상이어야합니다. 이 두 객체가 어떻게 섞여서 렌더링 되었는가? 즉, 가장 최근에 시작된 OR 조인 대화가 항상 위에 표시됩니다. 감사!