모델 코드에 대한 잘못된 ID를 반환액티브 쿼리 관련 개체
>> ProductGroup.last.products.map(&:id)
=> [11, 10]
>> ProductGroup.last.products.sort_by_priority.map(&:id)
=> [1, 2] #<= WHY?
왜 두 번째 경우에 I 잘못된 ID가있어? 어떤 아이디어? 생성 된 SQL 쿼리가 좋으며 오른쪽 ids (10,11)를 반환합니다.
레일즈 2.3.11, mysql db, ruby ee를 사용하고 있습니다.
'ProductGroup.last.products.sort_by_priority'는 무엇을 반환합니까? –
ProductGroup.find (the_id_you_want_to_check) .products ... – tokland
을 시도해보십시오. '조인'이 의심됩니다. 어쩌면'map (& : id)'는 조인 질의에 속아서 제품의 연관된 객체 ids를 반환 할까? 나는 잘 모르겠다. 레일 2를 모르겠다. –