2014-11-06 2 views
1

기본 퍼지 검색 달성 그래서 레코드와 검색 기능을 가진 기본적인 추가 - 편집 - 삭제 응용 프로그램이 있습니다. 지금까지 나는 ': title'속성으로 검색 할 수 있으며 ': price'로 검색하고 싶지만 실제로 보석 없이는 이것을 달성하는 방법을 알 수 없습니다. 두 가지 검색 가능한 속성이 포함 된 퍼지 검색입니다. 여기에 나쁜 들여 쓰기젬 SQLite

def search 
    @products = Product.fuzzy_search(params[:search_string]) 
    if @products.empty? 
    @products = Product.all.order :title 
    end 
    render :action => "index" 
    end 

(사과 the full controllermodel implementing fuzzy_search

+1

당신이 (가)'함수를 직접 fuzzy_search' 정의한를 - 왜 그냥 변경하지? 그리고 컨트롤러는 모델을 구현하는 모델보다 어떻게 더 관련이 있습니까? – yerforkferchips

+0

모델이 코드가있는 곳을 완전히 잊어 버렸습니다./ – Koxzi

답변

2

:. 정말 간단 것처럼 내가 느끼는

... 여기

는 검색을위한 컨트롤러 코드입니다. fuzzy_search 메소드 자체에 대한 코드를 입력하는 것이 더 도움이되었을 것입니다 :

def self.fuzzy_search(search_string) 
     search_string = "%" + search_string + "%" 
     self.where("title LIKE ?", search_string) 
    end 

내가 당신을 오해하고하지 않는 한, 당신은 왜 그냥이 할 수 없었 :

def self.fuzzy_search(search_string) 
     search_string = "%" + search_string + "%" 
     self.where("title LIKE ? or price LIKE ?", search_string, search_string) 
    end 
+0

그렇게 쉬운 것 같습니다. 나는 생각한다 - 나는 그것을 overthinking했다. – Koxzi