Вы можете создать область, чтобы справиться с этим.В вашей модели Project добавьте что-то вроде:
scope :search_by(name), lambda{|name| first.where(:name => name) unless name.blank?}
, затем в вашем контроллере просто позвоните:
Project.search_by(params[:search])
EDIT:
Если вам нужно выполнить поиск для несколькихполя, которые вы можете адаптировать область:
область: search_by (имя), лямбда {| имя |first.includes (: owner) .where ("projects.name LIKE? ИЛИ owner.name LIKE?", name, name), если только name.blank?}