2013-11-20 2 views
0

방금 ​​레일 백엔드와 통합 된 AngularJS 학습을 시작했습니다. 범위가 지정된 쿼리 논리가 어디에 속하는지 혼란 스럽습니다.AngularJS 범위 검색 쿼리

나는 게시물 목록과 "최신"및 "가장 많이 투표 한"순으로 게시물을 정렬해야하는 두 개의 링크가있는 간단한 블로그가 있습니다.

각도를 사용하면이 범위 논리는 어디에 있습니까? ng-repeat에는 '필터'옵션이 있지만, 수천 개의 게시물이 있고 가장 많이 투표 된 상위 10 개를 표시하는 필터를 사용하면 내 인덱스 작업에서 Post.all을 쿼리하는 것이 비효율적으로 보입니까?

은 내가 백 엔드 API에 제대로 범위 쿼리와 상호 작용에 대한 링크를 ""대부분의 투표 "를 클릭 사용자의 관점에서 이루어져야 무엇의 간단한 설명을 감사하겠습니다.

답변

0

나는 것 . PostsController에 요청에 PARAM order_by를 추가하려면이 PARAM을 사용하면 각도에 ​​다시 데이터베이스 및 송신에서 가져온 게시물을 주문하는 방법을 결정할 수 있습니다

을 그것은 두 가지 주목할 필요가 :.

  1. 돈을 ' 모든 레코드를 응용 프로그램으로 가져 오는 것이 비효율적이며 모든 레코드를 클라이언트로 보내는 것이 비효율적이기 때문에 Post.all을 사용하십시오. 페이지 매김 사용 : 특정 개수의 게시물을 가져옵니다. 이 SQL 주입을 일으킬 수 있기 때문에 당신은 Post.order() 인수로 직접 params[:order_by] 값을 넣어하지 기억 kaminari 또는 will_paginate

  2. 같은 보석을 사용하여 쉽게 페이지 매김을 추가 할 수 있습니다. this Railscast