2013-10-05 4 views
0

내가 범위를 관리 한 내 글은 내가 다음 코드를 사용하여 다음과 같은있어 사용자합니다 :레일과 내 자신의

following_ids = current_member.following_members.map(&:id) 
@statuses = Status.where(member_id: following_ids).order("created_at DESC") 

그러나 나는 또한 포함 할 내 자신의 게시물과 나는 이것을 달성하는 데 문제가 있습니다. 기본적으로이 코드를이 코드와 결합하면 다음과 같습니다.

@statuses = @member.statuses.order('created_at desc').all 

이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

답변

0

@status = @statuses.flatten 

사용, 하나 개의 연대기 목록의 목록을 보려면 평평하게하지 마라.

@statuses = Status.where("member_id in (?)", following_ids.push(current_member.id)).order("created_at desc").all 
0

두 객체 배열을 모두 당겨서 평평하게 만듭니다.

following_ids = current_member.following_members.map(&:id) 
@statuses = Status.where(member_id: following_ids).order("created_at DESC") 
@statuses << @member.statuses.order('created_at desc').all 
@statuses = @statuses.flatten 

내가 푸시를 사용하는 데 필요한

sort_by 전화 그래서 대신 내가이 일을 알아 냈

@status = @statuses.flatten.sort_by{ |status| status.created_at } 
+0

이렇게하면 내 모든 상태에 따라 사용자의 모든 상태가 스택됩니다. 나는 그들이 창조 된 시간에 따라 함께 섞이길 원한다. – iamdhunt