2012-11-05 3 views
0

내 응용 프로그램에 지속성 계층에 ember-rest을 사용하고 있으며 훌륭하게 작동했습니다. 내가 작업하고있는 리소스 중 하나는 선택적 리소스 매개 변수가 필요합니다. ember-rest 소스 코드를 살펴보면 요청 매개 변수를 설정하는 것과 관련된 것을 찾을 수 없지만 뭔가를 간과 한 것일 수 있습니다.Ember-rest에서 요청 매개 변수를 추가하는 방법

내 질문에, ember-rest는 URL에 추가 할 요청 매개 변수를 지정하는 방법을 제공합니까? 그렇지 않다면 ember-rest에이 기능을 추가하는 방법에 대한 조언은 매우 감사하겠습니다. 내가 패스를 선택적으로 할 수 있습니다이 리소스를 업데이트 할 put 요청을 할 때 당신이 볼 수 있듯이

POST /api/apps/:app_id/blockies?parent=:parent_id 
    - default :parent_id=:app_id 
    - TODO: error if the blocki cannot be placed in :parent_id 
PUT /api/blockies/:id 
PUT /api/blockies/:id?parent=:parent_id 
    - update the blocki and reparent it 
DELETE /api/blockies/:id 

:

예를 들어, 내가 자원과 작업하고 다음과 같은 REST API를 함께 제공 blocki라고 그것을 업데이트하려면 parent_id. 나는 ember-rest를 사용하여 이것을 달성하고 싶다.

답변

2

_resourceUrl() 메서드를 재정 의하여 리소스 또는 리소스 컨트롤러의 URL을 완전히 사용자 지정할 수 있습니다. 예 :

_resourceUrl: function() { 
    return this._super() + '?parent=' + this.get('parent_id'); 
} 
+0

신속한 응답 Dan! 좋아, 그래서 만약 내가 올바르게 이해할 경우 나는'_resourceUrl()'을 오버라이드 할 때 그 요청 파라미터가 사용 가능한지를 확인하고, 그렇다면 그 파라미터를 URL에 추가해야한다. parent_id는 모든 유형의 요청에 추가 할 필요가 없으므로 그 맞습니까? – Aras

+0

귀하의 유스 케이스에 맞는 것 같습니다, Aras. 그런데 요청에 대한 추가 제어가 필요한 경우 Ember.ResourceAdapter 믹스에서 _resourceRequest() 또는 _prepareResourceRequest()를 재정의 할 수 있습니다 (주석 참조). –

관련 문제