Вам не нужно использовать модель для каждого контроллера. В этом случае я бы использовал один SearchController
rails g controller Search index
добавить это к маршрутам:
match '/search/:keyword' => 'search#index'
root :to => 'search#index'
и в вашем контроллере вы можете написать
class SearchController
def index
if params[:keyword]
# search for the keyword ...
else
# render the search-form
end
end
end
Так что это довольно легко сделать в рельсах.
Использование рельсов в таком случае полезно, если у вас есть другие части сайта, которые нуждаются в большей функциональности. Также работать с представлениями может быть проще. Иначе теперь в рельсах 3 можно загружать только те части, которые вам действительно нужны. Так что в этом случае вы бы хотели не загружать ActiveRecord
.
Альтернативный подход - использовать что-то более простое, например, синатру.