Я новичок в веб-разработке и в частности в RoR, поэтому извините, если этот вопрос слишком очевиден. В любом случае, я пытаюсь создать веб-сайт по недвижимости, просто чтобы посмотреть, что для этого нужно, и я застрял в поиске. У меня есть несколько моделей, каждая для каждого вида недвижимости, например, квартиры, офиса, гаража и т. д., и когда пользователь ищет квартиру, он должен использовать модель «Квартира» для поиска, если она ищет гараж, то она надо искать в "гаражной" модели и так далее. Итак, не могли бы вы мне помочь и подсказать, что мне вставить в контроллер?
Поиск в разных моделях в зависимости от состояния [ Ruby on Rails ]
07.10.2013
- Вы можете использовать поле выбора, чтобы выбрать тип искомого объекта, и простой текст ввода, чтобы написать ключевые слова, чтобы найти искомый объект (ы). 07.10.2013
Ответы:
1
Определите сопоставление пользовательского ввода с классами.
SEARCH_TYPES = { 'apartment' => Flat, 'garage' => Garage, 'house' => House }
Определите класс на основе ввода пользователя и используйте методы поиска, как обычно.
def search
if klass = SEARCH_TYPES[params[:search][:type]]
klass.where(params[:search])
else
# handle no matching Class for type of search
end
end
Что нельзя делать: Попробуйте получить класс напрямую из параметров.
07.10.2013
Новые материалы
Получение стоковых обновлений с помощью Python
Для начинающего финансового аналитика
Введение
Описание: Этот проект Python создает скрипт для получения текущих обновлений акций с финансового веб-сайта Yahoo. Для этого проекта мы..
Это все, что вам нужно знать о Kotlin в 2022 году
Добро пожаловать! Kotlin — это язык программирования, популярность которого, кажется, растет, его действительно можно использовать для создания чего угодно, и если вы хотите узнать о Kotlin,..
Текстовый графический интерфейс с Lanterna на Java
Мой опыт работы с компьютерами (и текстовыми графическими пользовательскими интерфейсами) начался еще в восьмидесятых, когда я был ребенком, на дне рождения друга. Это был «новенький» Amstrad..
Перезарядите свой мозг: умопомрачительный потенциал мозговых компьютерных интерфейсов
Способность читать свои мысли и управлять объектами разумом долгое время были предметом человеческого любопытства, ограниченного областью научной фантастики… то есть до сих пор? С технологией,..
Основы C# — Нулевой оператор объединения (??)
Оператор ?? называется null-coalescing operator .
Этот оператор используется для предоставления значения по умолчанию, если значение операнда в левой части оператора равно null ...
Сравнение номеров версий в C++ с использованием синтаксического анализа строк
Номера версий обычно используются для обозначения развития или обновлений программного обеспечения или любого другого продукта. При работе с номерами версий в C++ может быть полезно сравнить две..
В мир искусственного интеллекта…
ИИ — это новое топливо в современном мире. Куда бы вы ни обратились, с кем бы вы ни разговаривали — они, как правило, упоминают об ИИ хотя бы раз в ходе разговора. ИИ гудит повсюду.
У каждого..