2011-01-22 5 views
3

저는 레일스를 처음 사용하고 트위터 타입 웹 앱을 사용하고 있습니다.레일스는 현재 사용자가 올린 사용자의 게시물을 보여줍니다.

'다음'및 '팔로어'부분은 정상입니다. 그러나 현재 사용자가 따르는 게시물 만 표시하도록 게시물 색인을 필터링하고 싶습니다. 내가 예상했던대로 8, 9는 아이디의이기 때문에

@posts = Post.where('user_id LIKE ?', current_user.friendships ) 

이 가까이 내가 원하는 무엇을 것 같다 오류

SQLite3::SQLException: near ",": syntax error: SELECT "posts".* FROM "posts" WHERE (user_id LIKE 8,9) 

를 던졌습니다 :

나는의 라인을 따라 뭔가를 할 필요가 내가 따르고있는 친구들.

내가 찾고있는 것을 얻는 가장 좋은 방법에 대한 제안이 있으십니까?

감사합니다!

+0

. 하지만 제 질문에는 약간의 결함이있었습니다. 우정이 파괴되면 문제가 발생합니다. @posts = Post.where (: user_id => current_user.friends)를 사용하는 것이 좋습니다. – Goldy

답변

5

LIKE 대신 IN을 시도해보십시오

@posts = Post.where("user_id IN (?)", current_user.friendships) 

또는 :

업데이트 TK-421의 대답은 내 질문에 관련하여 정확했다 것처럼
@posts = Post.where(:user_id => current_user.friendships) 
+0

치료를 받았다! 당신의 도움을 주셔서 감사합니다! – Goldy

관련 문제