스핑크스를 사용하여 db의 항목이 실제로 영어 인 프랑스어 단어를 검색하려면 어떻게해야합니까?ROR 프로젝트의 Thinking Sphinx를 통해 french 검색
내가 "카테고리"라는 DB의 테이블이있는 ROR 프로젝트를 가지고 있고, 카테고리 이름은 영어, 종류가 많은 "질문"항목에 있습니다
상황이다.
현지화 파일 config/locals/fr.yml에서이 카테고리는 프랑스어로 번역되었습니다.
확장성에 대해 고려해 보면 db의 범주 이름을 프랑스어로 변경할 수 없습니다.
사용자는 키워드의 일부를 입력하여 검색 할 수 있습니다. 카테고리 이름 : 보건 프랑스어로 의료 : 상테 등 médecine
그래서이 할 수있는 방법 : 검색 필드와 스핑크스에 유형 "상테의 médecine ABC 방송의"를 반환합니다 여기
은 예입니다 "건강 및 의학"카테고리 아래의 "질문"과 키워드 "abc"가 있습니까?
답장을 보내 주셔서 감사합니다. 카테고리가 많으므로 사용자가 카테고리를 선택하도록 선택하면 ID가 적당하지 않습니다. 고객은 검색 상자에 카테고리 이름의 일부를 입력하여 해당 카테고리 아래의 모든 "질문"을 찾으려고합니다. 검색 엔진은 스핑크스입니다. –
입력이 다른 언어로 된 카테고리의 일부일 수 있다는 것을 의미합니까? 그렇다면 일치하는 카테고리의 모든 질문을 받아야합니까? – klew
그렇다면 먼저 yml 파일의 모든 카테고리 이름과 일치시키고 카테고리 ID를 가져와야합니다. 그런 다음 db에서 모든 것을 가져옵니다. 스핑크스는 여기에 필요하지 않습니다. 그리고 스핑크스에 관해서 제가 아는 한 (나는 단지 약간 알고 있습니다) 그것이 db에 직접 간결하다는 것입니다. 그래서 아마도 db에있는 데이터 만 찾을 수 있습니다. 그래서 당신이 yml에 뭔가가 있다면, 그것은 스핑크스에 의해 사용되지 않을 것입니다. 다시 한번 : 당신은 당신의 번역을 데이터베이스에 저장해야합니다. – klew