2010-06-22 3 views

답변

4

중성미자는 스핑크스 (그래서, 생각 스핑크스는) 항상 요청을 페이지 매김된다는 사실을 주목할 필요가 ... 첫째

거의 정확, 당신이 그것을 변경하려면 기본 페이지 크기는 20입니다, :per_page => 30 또는 이와 비슷한 값을 전달하여 원하는 페이지 당 레코드 수를 얻을 수 있습니다.

Model.search 'foo', :per_page => 42 

두 번째로, 스핑크스 (기본적으로)는 사용 가능한 검색 결과의 총 수를 기본적으로 1000 개로 제한합니다. 이것이 Neutrino가 지적한 것입니다. max_matches를 설정하면 그 값을 늘릴 수 있습니다. 그러나 도 검색 호출에 :max_matches의 값을 지정해야합니다.

rake ts:rebuild 

이 생성 된 구성되도록한다 : -

Model.search 'foo', :max_matches => 10_000 

당신은 당신이 당신의 config/sphinx.yml 파일의 값을 변경할 때/다시 인덱스/재시작을 중지해야합니다이가하는 하나의 레이크 작업있다 파일이 최신이고 Sphinx 데몬이 변경 사항을 인식하고 있습니다.

+0

감사합니다. 검색 부분에 per_page를 사용하여 얻었습니다. –

0

을 변경하는 방법 다음과 같은 추가 config/sphinx.yml (당신은 이미이없는 경우 하나를 만들 수) :

development: 
    max_matches: 10000 
# ... repeat for other environments 

이 더 많은 정보를 위해 docs 참조 .

+0

나는 그것을 시도했지만 동일한 20 개의 레코드로 결과를 낸다. –

+0

그 후에'rake ts : config'를 실행 했습니까? –

+0

그래도 여전히 결과가 없습니다. –

0

나는 20 개 이상의 결과를 가져 오는 모든 것을 시도했다. 설정 파일 I 1000에 max_matches를 퍼트에서

,

를 다음 또한 그것은 나에게 20 결과를주고 있었다.

그런 다음 시도해 보았습니다. per_page => 200, 그리고 더 많은 결과를 얻었습니다. 도움을

감사합니다. 컨트롤러 나를 위해 일한 것

@sphinx = Ad.search(params[:search], :per_page => 1000) 

에서

관련 문제