내 테이블 사용자레일 간단한 검색 쿼리
def nameSearch(search)
where('name like ? OR secondName like ?', "%#{search}%", "%#{search}%")
end
내 기능이 작동이
Name | SecondName
-------------------------
"David" | "Graham"
-------------------------
"Gary" | "Jules"
-------------------------
"Gary" | "Lincon"
임 내 모델에서이 기능을 시도하고 다음과 같습니다
User.nameSearch("Gary")
수익률이 기록을
User.nameSearch ("ary")
는 2 레코드를 반환합니다.
어떻게 검색합니까?
User.nameSearch("Gary Jules") returns nil
nil 대신 2 개의 레코드가 반환됩니다.
당신은 % 와일드 카드는 다음이 배열에 쿼리를 추가, 배열을 얻을 수있는 공간에 문자열을 분할 할 수
검색 변수를 두 개의 토큰으로 토큰 화합니다. – trueinViso
@trueinViso 두 개의 매개 변수를 허용하는 함수를 정의 할 수 있지만 정확한 검색 (1 개의 레코드) 만 반환합니다. 대신 모든 기록을 반환하고 싶습니다. 내 예제에서 내가 검색 한 결과는 2 개의 레코드를 반환합니다. – Abraham