Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » подскажите как организовать поиск на сайте [RSS Feed]

#1 Июль 30, 2020 13:02:32

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

подскажите как организовать поиск на сайте

есть продукт, обозначение которого состоит из 12-15 цифр примерно, например, TX-1234-5678-9012-3456
каждый из символов что-то означает в зависимости от того на какой позиции он находится
Первые две буквы “ТХ” у всех одинаковы, а начиная с 3-ей позиции каждая цифра имеет свое значение / смысл / расшифровку
У каждой позиции примерно 3…7 возможных вариантов. Каждый из вариантов - как-то расшифровывается.
На вебсайте предусмотрен поиск продукта по обозначению. Вебсайт на джанго + MySQL
Если результат поиска был успешен, посетитель должен увидеть продукт и расшифровку того, что обозначает каждая позиция.
Как мне правильнее организовать sitemap.xml для поисковика и поиск для посетителей вебсайта?
вариант 1 - динамическое создание обозначения из таблиц. В этом случае при последующих запросах посетителей или поисковика для формирования каждого обозначения мне нужно будет обратиться 12-15 раз к базе данных.
вариант 2 - заранее создать все возможные обозначения и забить их в таблицу и потом искать внутри этой таблицы. Всего получиться должно наверное не более 20.000 записей.
Спасибо

Отредактировано gtlhbkkj (Июль 30, 2020 13:38:22)

Офлайн

#2 Июль 30, 2020 16:18:15

romankrv
От:
Зарегистрирован: 2008-05-23
Сообщения: 513
Репутация: +  0  -
Профиль   Отправить e-mail  

подскажите как организовать поиск на сайте

Первоклассная инструкция по внедрению поиска в проект https://blog.maddevs.io/django-postgresql-search-68274ef48801

Отредактировано romankrv (Июль 30, 2020 16:18:58)

Офлайн

#3 Июль 30, 2020 18:53:19

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

подскажите как организовать поиск на сайте

romankrv
Первоклассная инструкция по внедрению поиска в проект https://blog.maddevs.io/django-postgresql-search-68274ef48801
вы бы вопрос почитали
или ваша задача прорекламировать первоклассный американский хВостинК ?
Вы знаете с каким уважением я к вам отношусь, но зачем же заполнять пространство мусором!

Отредактировано gtlhbkkj (Июль 30, 2020 18:54:39)

Офлайн

#4 Июль 30, 2020 19:32:29

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8031
Репутация: +  559  -
Профиль   Отправить e-mail  

подскажите как организовать поиск на сайте

gtlhbkkj
Вам бы что-нибудь почитать про орг8анизацию данных
https://ru.wikipedia.org/wiki/%D0%9D%D0%BE%D1%80%D0%BC%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%84%D0%BE%D1%80%D0%BC%D0%B0

У вас одна и та же проблема каждый раз. Вы начали проект на Джанго не пройдя туториал по Джанге и не прочитав никакой серьезной литературы по питону. Теперь вы заморочились данными, но у вас нет никакой теории СУБД. Вы хотя бы учебник по mySQL осилили?



Офлайн

#5 Июль 30, 2020 20:56:00

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

подскажите как организовать поиск на сайте

FishHook
Вам бы что-нибудь почитать про орг8анизацию данных
Спасибо за статью. Почитал. Но не уловил как связана организация данных с моим вопросом. Намекните.
Учебник по MySQL читал местами, но не осилил полностью, ибо не теоретик.

Давайте задам вопрос по-другому.
У меня есть Продукт, который характеризуется двумя параметрами П1 и П2. Обозначение продукта идет по схеме П1П2. Каждый параметр может принимать только два значения.
П1 = Ч-черный, Б-белый
П2 = Ж-женский, М-мужской
Из них надо сформировать все возможные комбинации параметров.
ЧЖ
ЧМ
БЖ
БМ

Других комбинаций не существует.
Мне нужно по запросу любой из комбинаций, любого обозначения, например “ЧМ”, вывести посетителю линк ххх.сом/ЧМ/
в котором написать

Продукт ЧМ
Ч - черный
М - мужской

Мой вопрос - генерировать эти обозначения динамически на лету или заранее создать таблицу, забить в нее четыре возможных вышеуказанных обозначения и при запросе искать в таблице?

При динамическом генерировании у меня получается 12 таблиц (по таблице на параметр) в каждой из которых по 10 записей (10 возможных варианты каждого параметра). При запросе посетителя мне нужно обратиться по одному разу к каждой из 12 таблиц и поискать в них требуемые параметры. Это легко и быстро и для этого не нужно забивать все возможные значения в новую таблицу. Не понимаю как я поисковику дам sitemap.xml. Чтобы сгенерировать для поисковика файл со всеми возможными вариантами понадобится время, наверное несколько минут. Это нормально? Или я просто не понимаю как из указанных 12 таблиц с 10 записями в каждой в течение секунды сгенерировать sitemap.xml ?

Это был оригинальный вопрос.
А второй возникший вопрос - как связана нормализация данных с моим вопросом?

Отредактировано gtlhbkkj (Июль 30, 2020 21:15:13)

Офлайн

#6 Июль 31, 2020 02:27:31

romankrv
От:
Зарегистрирован: 2008-05-23
Сообщения: 513
Репутация: +  0  -
Профиль   Отправить e-mail  

подскажите как организовать поиск на сайте

gtlhbkkj
или ваша задача прорекламировать первоклассный американский хВостинК ?
И это тоже. Это подпись такая спонсорская. :)

PS
Вопрос топика задан в формате ФОРУМ ДРИВЕН ДАВЕЛАПМЕНТ. То есть - вы задали слишком много деталей - никто не хочет разбираться в таких деталях и решать за вас. Вопрос лучше подготовить более компактнее, показать что вы проработали вопрос, а не просто просить дать готовое решение через завуалированную фразу
gtlhbkkj
Как мне правильнее

тут статья с хабра - Как правильно задавать вопросы на тех. форумах

Спасибо за уважение к чужому времени.

Офлайн

#7 Июль 31, 2020 10:35:29

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8031
Репутация: +  559  -
Профиль   Отправить e-mail  

подскажите как организовать поиск на сайте

gtlhbkkj
Спасибо за статью. Почитал. Но не уловил как связана организация данных с моим вопросом. Намекните.
gtlhbkkj
есть продукт, обозначение которого состоит из 12-15 цифр примерно, например, TX-1234-5678-9012-3456
Ну и зачем вы придумали это “обозначение”? Оно вам как-то помогает решать ваши проблемы?
gtlhbkkj
Давайте задам вопрос по-другому.
У меня есть Продукт, который характеризуется двумя параметрами П1 и П2. Обозначение продукта идет по схеме П1П2.
Давайте зададим вопрос вообще по-другому. Что вы хотите получить именуя продукт по некой “схеме”? Зачем это?



Офлайн

#8 Июль 31, 2020 12:13:19

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

подскажите как организовать поиск на сайте

FishHook
добрый день
Скорее всего я неправильно задал вопрос. Посмотрите пож-ста на мой начальный вопрос. “Есть продукт, название которого состоит из хх символов”. Это означает что такой продукт с таким обозначением уже существует и не я его придумал.
Например, завод по производству памперсов производит много видов памперсов и обозначение каждого вида памперса завод кодирует таким образом, как я обьяснил выше - например Ч-черный, М-мужской.
Когда у пользователя интернета заканчиваются памперсы, он смотрит что было написано на старой упаковке и читает “ЧМ”. Он вводит в гугл “ЧМ”. Гугл должен знать что в моем sitemap.xml есть такое обозначение и направить на мою вебстраницу.
А на этой вебстранице я еще раз подтвержу пользователю, что Ч-черный, а М-мужской, чтобы у него не осталось сомнений в том, что он выбрал правильный продукт.

На самом деле аттрибутов у продукта не два как указано выше, а 12 и возможных значений у каждого аттрибута не два как указано выше, а в среднем 5-10 (по разному для каждого аттрибута).
Спасибо

Офлайн

#9 Июль 31, 2020 14:18:19

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8031
Репутация: +  559  -
Профиль   Отправить e-mail  

подскажите как организовать поиск на сайте

gtlhbkkj

gtlhbkkj
Это означает что такой продукт с таким обозначением уже существует и не я его придумал.
не важно, кто придумал, важно что вы эту строку используете в своей бизнес-логике, хотя она бесполезна как для вас, так и для пользователей.

gtlhbkkj
На самом деле аттрибутов у продукта не два как указано выше, а 12
А почему именно 12? А если появится 13-й? 22-й? Вы с 1-С когда-ни будь работали? Представьте себя на месте бухгалтера. У вас есть склад, на складе хранятся памперсы, апельсины, швейные машины и патефонные иголки. Логично заподозрить, что все товары каким-то образом классифицированы. То есть у вас есть каталог типов товара - “продукты”, “бытовые приборы”, “гигиена”. У каталога гигиена есть подкаталоги “антисептики”, “туалетные принадлежности” и “одноразовые”. Если ваш склад увеличит ассортимент товаров, то у вас появятся “обувь”, “спортивный инвентарь” и “сантехника”. У каждого товара есть уникальный идентификатор по которому можно однозначно определить единицу хранения.
Как-то так это работает у нормальных людей.



Офлайн

#10 Июль 31, 2020 14:47:38

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

подскажите как организовать поиск на сайте

FishHook
gtlhbkkj
извините, видимо я не в состоянии внятно обьяснить.
У вас свое представление как хранятся товары на складе.
Представьте себе что существуют и другие классификации. Классификация была разработана лет 50-70 назад и регулярно совершенствовалась. К ней не может быть претензий. Под продуктом я не имею ввиду не неимеющие друг к другу отношения продукты типа апельсинов и бытовых приборов, а один единственный продукт в разных модификациях, То есть ПАМПЕРС но в десятках тысяч модификаций.

Пускай речь идет исключительно о памперсах.
Завод выпускает памперсы тысячами модификаций. Но все они памперсы. Чтобы никто в мире среди клиентов не запутался, создана стройная система классификации памперсов. Например,
1 буква/цифра/знак в обозначении памперса означает, например, цвет (завод выпускает памерсы нескольких цветов)
2 буква/знак - для мальчиков, девочек, мужчин, женщин, крупных животных, мелких животных и тд
3 буква/знак - сколько влаги они вбирают - до 100 грамм, до 200 грамм и тд
4 буква - какой материал использован “памперсан+”, “суперпамперсан”, “премиум памперсан” и тд
5 буква и т д.

12 буква

Клиенты во всем мире знают как называется их излюбленный памперс по кодовому обозначению потому что они в любую минуту могут почитать на обертке как он называется. Но они не уверены в вышеперечисленных его атрибутах. Поэтому они заходят в гугл и вводят любимое название в поисковую строку типа “Памперсон ABCDE-FGH-…”

Извините что я вам надоедаю. Приятно что вы вежливо поддерживаете беседу. Надеюсь что вам тоже приятно.

Отредактировано gtlhbkkj (Июль 31, 2020 14:48:36)

Офлайн

  • Начало
  • » Django
  • » подскажите как организовать поиск на сайте[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version