В модели я сериализую категорию столбца в модели событий как массив, поэтому у меня есть
serialize :category
Дело в том, что мне нужно предоставить функцию поиска пользователям.Итак, как мне искать, если категория находится внутри события.
Event.find(:all, :conditions => ['category = ?', params[:category]])
Это не будет работать, поскольку категория хранится в виде сериализованного массива.Любая идея?
Единственный способ, которым я могу придумать, получить все события и отфильтровать каждый экземпляр.
Event.all.select{|e| e.category.include? params[:category]}
Это неэффективно вообще.
Или ещеЯ могу использовать как заявление
Event.find(:all, :conditions => ['category = ?', "%-#{params[:category]}%"])