- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Добрый день.
Нужно организовать определенный функционал, подскажите более элегантное решение.
Вот, например, http://vse-sto.com.ua/donetsk/sto/ (мне нужно реализовать аналогично)
В этот каталог при добавлении СТО можно галочками отметить все ниши, в которых специализируется СТО, например, По марке авто(Acura, Audi, BMW и т.д.), По видам работ(3D развал-схождение, Автозапчасти, Автозвук, Авторазборка, Аквапечать и т.д.).
Меня интересует архитектура БД. Как мне её реализовать? Каждому объекту присваивать кучу полей? Будет таблица, в которой есть поле sto_id, к которому привязывается marka_acura_id, marka_audi_id, bmw_id и т.д., потом triD_razval_shojdenie_id, avtozapchasti_id, avtozvuk_id, avtorazborka_id, akvapechat_id, и т.д.
Это у меня единственная мысль пока. Но что-то данное решение мне совсем не представляется элегантным и оптимальным. При добавлении новой "галочки" прийдется изменять структуру БД.
нужно создать отдельные таблицы для каждого критерия.
Например марка авто (id, marka, ...), вид покраски (id, color....)
И потом при нажатии чекбокса собираешь все параметры и делаешь выборку по данным критериям. Запросы можно привести к минимуму при помощи INNER JOIN
нужно создать отдельные таблицы для каждого критерия.
Например марка авто (id, marka, ...), вид покраски (id, color....)
И потом при нажатии чекбокса собираешь все параметры и делаешь выборку по данным критериям. Запросы можно привести к минимуму при помощи INNER JOIN
1)В данном подходе есть свои минусы. Нельзя динамически (из админки, например) добавлять новые критерии.
2)Если критериев будет 100, то прийдется создавать 100 таблиц.
Как я реализовывал похожую ситуацию. Окончательный вариант все же будет зависеть от нужд Вашей системы, но примерно так:
Таблица STO (id, name, description, и т.д...) - описание конкретной СТО
Таблица Categories (id, name, type - не обязательно) - здесь будут хранится критерии, например:
100, Марка авто, singleselect.
200, Виды работ, mulitiselect
Таблица Category_Options (id, category_id, value) - все возможные опции для категорий, например:
1, 100, Acura
2, 100, Audi
.............
3, 200, 3D развал-схождение
4, 200, Автозапчасти
.............
Таблица STO_Category_Options (id, sto_id, option_id) - карта между СТО и опциями
Дальше уже дорабатывайте, на свое усмотрение. Поле name.type в моем, более сложном примере было необходимо, т.к у меня были не только singleselect, multiselect свойства, но и например диапазон, который задавался минимальным и максимальным значением в момент добавления СТО, разным для каждой конкретной СТО. Такие значения уже не получится вписать в STO_Category_Options, а создавать отдельную таблицу для этого типа Вида (id, sto_id, category_id, min_value, max_value)
doctorpc, спасибо, по-моему это то, что нужно