2017-09-28 5 views
0

그래서 주어진 반경 내에서 위치/좌표를 기반으로 항목을 검색하려고합니다. 그리고이 사용 성공했다 :내용 : [within] 쿼리 매개 변수 위치를 사용하여 콘텐츠를 주문할 수 있습니까?

$query = new \Contentful\Delivery\Query; 
    $query->setContentType('store') 
    ->where('fields.location[within]', '-37, 144, 50'); 

그러나, 반환되는 순서가 반경 주어진 중심의 거리로 정렬되지 않습니다. 어떤 도움을 주시겠습니까? 감사.

+0

는 https://stackoverflow.com/questions/574691/mysql-great-circle-distance-haversine-formula를 살펴 보자. – chris85

답변

1

연산자와 달리 within 연산자는 정렬 작업을 수행하지 않습니다. 당신은 당신이 무엇을하고있는 것으로 보인다 원형 영역의 맥락에서 within를 사용하려는 경우, 당신이 원하는 당신은 near로 교체 할 수 있습니다 그리고 그것은 방식으로 작동한다 그것은 :

fields.foo[near]=x,y,radius

radius 매개 변수를 사용하여 검색 영역을 제한 할 수 있습니다. 시도해 보시고, 이것이 도움이되는지 알려주세요! 다비드