0
@keywords = ['news', 'TV show', 'games', 'IT']
같은 키워드의 배열로 사용자의 입력을 받아 필터링 알고리즘을 쓰고 있어요 내 데이터베이스에, 예를 들어, 비디오 테이블을 테이블을 조회 할 수 있습니다. 쉼표로 구분 된 두 개의 태그를 포함하는 문자열 필드가 테이블에 있습니다. 동영상 인스턴스의 경우 태그 입력란에 키워드가 하나 이상 포함되어 있으면 반환해야합니다. 나는 그럼 난 첫째, 중복 된 비디오를 포함하는 것, 발견
@videos = []
@keywords.each |word| do
@videos.push(Video.where('tags LIKE ?', '%#{word}%'))
end
@videos = @videos.flatten
처럼 뭔가 시작하고, 둘째, 전혀 효율적이지 키워드의 길이로 데이터베이스를 여러 번 쿼리합니다.
개선을위한 제안 사항이 있으십니까?