2017-12-19 1 views
1

frontend에 angularjs를 사용하고 백엔드에 루프백을 사용하고 데이터베이스를 신축 검색합니다. , 개방, 처리, 가까운루프백 맞춤 주문 by

{ 
"_index": "XXXXXX", 
"_type": "XXXXX", 
"_id": "XXXXXXX", 
"_version": 1, 
"_score": 1, 
"_source": { 
    "name": "aadil kirana", 
    "email": "[email protected]", 
    "message": "dfgfb dgfggf", 
    "quantity": 3434, 
    "price": 5454, 
    "status": "open", 
    "createdAt": "2017-12-19T14:53:41.727Z", 
    "updatedAt": "2017-12-19T14:53:41.727Z" 
    } 
} 

상태 :

데이터로

"name": { 
    "type": "string", 
    "required": true 
}, 
"mobileNumber": { 
    "type": "string", 
    "required": true 
}, 
"email": { 
    "type": "string" 
}, 
"message": { 
    "type": "string", 
    "required": true 
}, 
"quantity": { 
    "type": "number", 
    "required": true 
}, 
"price": { 
    "type": "number", 
    "required": true 
}, 
"status": { 
    "type": "string", 
    "required": true, 
    "default": "open" 
} 

} :

나는 같은 특성을 가진 모델을 가지고 거부 ​​실패.

내가 원하는 건 내가 createdAt에 의해 등등 DAT 및 주문 상태 데이터를 prcoessing createdAt 날짜별로 정렬 된 모든 열린 상태 데이터, 다음 모든 을 볼 수 있습니다 순서대로 데이터를 얻을 수 있습니다 .. ..

내가으로 루프백 필터를 사용하여 시도 :

filter = { 
       order: ['status ASC','createdAt DESC'], 
      }; 

하지만이 먼저 날짜순으로 모든 가까운 상태 데이터, 모든 일을 나에게 준다 e 상태 데이터는 날짜순으로 정렬되며 그 상태는 사전 순으로 정렬됩니다.

원하는 결과를 얻으시기 바랍니다.

+1

(1) loopback-에 의해 건설되는 실제 ES 쿼리를 추적 es- 커넥터. 그것은 로깅 프레임 워크가 네임 스페이스에 의한 로깅을 가능하게하는'debug'이기 때문에 로그에서 빠져 나갈 수 있어야합니다. (2) 원하는 결과를 얻을 때까지 쿼리를 가져 와서 직접 수정하십시오. ES DSL에 대한 더 나은 이해가 필요합니다. (3) loopback-es-connector의 작성자에게 조정 한 원시 ES 쿼리를 핑 (ping)하고 올바른 결과를 제공합니다. 그들에게 커넥터를 향상 시키도록 요청하거나 커넥터가 그와 같은 쿼리로 끝내도록 지시하는 방법을 알려줍니다. – pulkitsinghal

+0

상태 번호를 사용하십시오 – Mehari

+0

@Mehari 당신은 상태에 ID를 제공하는 것으로 지정 하시겠습니까? 예 : open = 1, processing = 2 등? –

답변