2012-08-05 4 views
0

페이스 북을 쿼리 할 때 코알라 API를 사용하고 있습니다.ActiveRecord 쿼리가 제대로 작동하지 않습니다.

@result = @graph.fql_query("select uid, name, pic_square FROM user WHERE is_app_user AND uid IN (SELECT uid2 FROM friend WHERE uid1 = me())") 

나는 "쏴"내 ActiveRecords를 조회하여 객체 @result의 일부 인스턴스를 버리고 싶습니다

@result.each do |f3| 
    y1 = Shoot.where(:uid1 => f3["uid"]) 
    @y2 = y1 
    if y1 
     xtUid = f3["uid"] 
     xName = f3["name"] 
     xPicture = f3["pic_square"] 
     .... 
    end 
    ... 
end 

을 나는 다음과 같은 문제가있다. 그것은 보인다 : 1. y1은 항상 유효한 것으로 설정되어 있지만 프로그램이 충돌하지 않는다. 2. y1을 y1 [0]으로 대체하면 프로그램이 충돌합니다.

나는 어떤 조언을 부탁드립니다. 감사!

+0

또한 레일 콘솔에서 y1은 올바르게 동작합니다 – user1388066

+0

아마도'where'는 아무 것도 반환하지 않으며 빈 배열을 의미합니다. 첫 번째 요소에 액세스하려고하면 모든 것이 충돌합니다. SQL 요청을 로깅해야합니다. –

+0

@AnthonyAlberto 감사합니다. – user1388066

답변

0

마침내 대답을 발견 : f3 [ "uid"]. to_s. F3 [ "uid"]는 문자열로 변환되어야합니다. 도움을 주신 감사합니다 @Anthony!

관련 문제