Problem z wyszukiwarką

Witam,
mam problem z implementacją mechanizmu wyszukiwarki w RoR.
Mam kontroler i model nazwany Search, który wyszukuje danych z tabeli users. Wygląda to tak:
kontroller:

# (...) def results @results = Search.users end
model:

[code]class Search< ActiveRecord::Base

def users
@users ||= find_users
end

private

def find_users
User.find(:all, :conditions => conditions)
end

def gender_conditions
[“user.gender = ?”, gender] unless gender.blank?
end

def minimum_age_conditions
[“user.birthday >= ?”, minimum_age] unless minimum_age.blank?
end

def maximum_age_conditions
[“user.birthday <= ?”, maximum_age] unless maximum_age.blank?
end

def conditions
[conditions_clauses.join(’ AND '), *conditions_options]
end

def conditions_clauses
conditions_parts.map { |condition| condition.first }
end

def conditions_options
conditions_parts.map { |condition| condition[1…-1] }.flatten
end

def conditions_parts
private_methods(false).grep(/_conditions$/).map { |m| send(m) }.compact
end
end[/code]
Po wysłaniu formularza z danymi, otrzymuję

NoMethodError in SearchController#results undefined method `users' for Search(id: integer, created_at: datetime, updated_at: datetime):Class
zdefiniowałem nawet na chwilę

def testuj return true end
ale z podobnym wynikiem - co do tabeli search- zdaję sobie sprawę, że jest niepotrzebna, dlatego napewno wyleci, jak tylko uporam się z tym problemem…

[code] class Search< ActiveRecord::Base

def self.users
@users ||= find_users
end

end[/code]
Poza tym looknij na temat o fajnych pluginach założony przez Tomasha - jest tam kilka pluginów do ułatwienia wyszukiwania.

hmm, faktycznie, męczenie się z własną implementacją wyszukiwarki była bez sensu (robiłem to w sumie w ramach nauki :wink: ) skorzystałem więc z searchlogic. pytanie teraz takie:
mam w bazie danych polę birthday, natomiast w formularzu chciałbym zadeklarować dwa pola: :age_min oraz :age_max (text_field, :size=>2 ) :wink: - jednak bez edycji czegoś wyskakuje mi noMethodError - zapewne trzeba przerobić to:

def index @search = User.new_search(params[:search]) @users, @users_count = @search.all, @search.count end
tylko tak naprawdę nie wiem w jaki sposób dodać tam, żeby pole birthday było pomiędzy wartościami age_min oraz age_max - może ktoś pomóc?