2014-07-11 2 views
0

그래서 ... 부모 리소스의 중첩 된 리소스를 가져오고 싶습니다.중첩 된 리소스 재 배열

특정 책의 모든 페이지를 표시하고 싶습니다.

어떻게 든 구형으로 처리하는 것이 좋을 것입니다. 내가 문서를 볼 때해야 할 것처럼 보입니다. 여기에 작동 AngularJS와에서 변경 한 해킹이다,하지만 난이 Restangular로 일하게해야 같은 느낌 : ALL 책에서

$scope.getPages =() -> 
     Restangular.one('books', 8).getList('pages').then (response) -> 
     console.log(response) 
     $scope.pages = $filter('filter')(response, book_id: 8) 

Restangular.one('books', 8).getList('pages') 반환 모든 페이지. 나는 그것을 얻지 못한다. 책 8의 페이지 만 반환하면 안 되는가? 난 그냥 페이지를 필터링하고있어 거기에서

어쨌든, 그래서 나는 유일한 책 8

에서 페이지로 끝날하지만 어떻게 든 Restangular이 할 수없는 이유는 무엇입니까?

추신 : AngularJS의 $ 필터를 js 파일의 $ filter를 사용하여 발견 한 예제가 없습니다. 모든 것이 "페이지의 페이지 | 필터 : {book_id : 8}"과 같은 HTML을 통해 이루어집니다.

+0

내 대답은 문제를 해결하는 데 도움이 되었습니까를 ..? –

답변

2

구문이 약간 잘못되어 잘못된 요청이 전송되었을 수 있습니다. 시도 :

Restangular.one('books', 8).all('pages').getList().then(response) 

이에 요청해야한다 : /books/8/pages

+0

감사합니다 !! 실제로 두 구문 모두 올바른 GET 요청을합니다. 나는 Book.find (params [: id]) 대신 Book.all을 돌려주는 레일 컨트롤러를 가지고있었습니다. 참고로 ... 책에 속한 페이지에 대한 GET 요청을 만들고 싶다면 Page.where = page.where (book_id : params [: book_id])가 아닌 Page.where (book_id : params [: id]). 그래서 정말로, 내 문제는 Angular가 레일에 올바르게 말하기를 얻고 있었다. – rikkitikkitumbo

+0

@ user3583384 구문이 틀린데, 이것들은 모두 같은 'GET'요청을하지 않을 것이다. 귀하의 질문에'getList ('pages')'가 올바르지 않으면 쿼리 매개 변수 만 빌더의'get' 및'getList' 부분에 있어야합니다. 귀하의 질문에 '책/8'을 요청할 것입니다. –