3
나는 Golang과 Firego를 사용하여 Firebase에서 타임 스탬프 목록을 얻으려고합니다. 정렬되지 않은 될 수 없습니다 v
Firebase, Firego and orderBy
var v map[string]interface{}
if err := f.StartAt("a").EndAt("c").LimitToFirst(8).OrderBy("field").Value(&v); err != nil {
log.Fatal(err)
}
fmt.Printf("%s\n", v)
내가 완전히 뭔가를 분명 실종해야하지만입니다 :
문서는 제안? 지도 (for key, val := range v
)를 반복 할 때 값은 액세스 순서가 undefined이므로 Firebase 호출에 대한 응답에서 전송 된 순서와 다를 수 있습니다.
무엇이 누락 되었습니까? 감사합니다
좋아, 그래서 나는 화를 내고 있지 않다. 나는 지금까지 주문에 신경을 쓰는 사람이 아무도 없다는 것에 놀랐다. 프로젝트에 문제를 추가 할 것입니다. – supercalifragilistichespirali
"이지만 원래 결과 (상위 8 개로 제한)가 주문됩니다."--- JSON 배열이나 JSON 객체로 반환 될까요? – zerkms
* firebaser는 여기에 있습니다 * Firego는 Firebase의 REST API를 기반으로 작성되었으며 동일한 제한이 있습니다. JSON 객체를 노출하므로 결과는 본질적으로 정렬되지 않습니다. 따라서 'OrderBy'를 사용하는 유일한 이유는 데이터를 필터링하기 위해서입니다. [내 대답은 여기] (http://stackoverflow.com/questions/31808990/firebase-returning-keys-of-child-node-in-different-orders-on-different-devices-a/31812506#31812506)를 참조하십시오. Firebase SDK는 더 복잡한 데이터 구조를 반환하여 클라이언트에서 올바른 순서로 자식을 노출 할 수 있습니다. –