Показать сообщение отдельно
  #63 (permalink)  
Старый 09.04.2018, 14:46
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от SERblY
мне то всего то надо же слайдер до ума довести
И что это значит?

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

И это ведь очевидно, и вообще не имеет отношения к программированию.

Представьте, что вместо привычных отделов различных групп товаров вы увидите один отдел, где все товары свалены в кучу, причем каждая группа товаров впихнута в маленькую коробку, в которой сложно найти нужное, и этот единственный отдел длиною в 500 метров. Вам удобно будет купить нужное?

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

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

Ваш магазин предлагает от жевательных резинок за 5 руб до черной икры за 50000 руб, и вы все товары свалили в кучу. Удобно ли будет покупателю уже интернет магазина купить чтобы либо у вас, или же так же, очевидно, нет, как и выше в реальном магазине? А то что слайдер цен в данном случае вообще бесполезен, уже говорилось.

Javascript появляется на горизонте тогда, когда на сервере есть грамотная организация магазина, представление его товаров и прочее. Клиент запрашивает нужное, JS используя данные данные ему серверов обеспечивает удобный сервис для клиента, вашего покупателя.

Если магазин имеет грамотную организацию, значит у него есть отделы (не важно, что магазин виртуальный, подход тот же самый, что и в реальном) - бакалея, ХБ изделия (не обмундирование), консервы, ... Равноценно как вы придя за хлебом в реальный магазин, идете в отдел хлебобулочных изделий, так и в виртуальном магазине покупатель должен иметь возможность посещения нужного отдела магазина. Это обеспечивается меню. Но такой же доступ к разделам должен быть и при поиске товаров. А это значит, что сперва покупатель выбирает категорию товаров, затем задает диапазон цен. Вот тут уже работа JS - получить данные представленные сервером по ценам категорий товаров, чтобы инициализировать слайдер на диапазон крайних цен выбранной пользователем категории товаров.

Вот что должен отдать сервер клиенту:

var prop_range = {
     '1' : {'min': 50, 'max': 600, 'step': 60},
     '2' : {'min': 2800, 'max': 13700, 'step': 200},
     ....
}


где 1 и 2, это ID категорий товаров, которые являются значениями списка категорий в фильтре. И под ними как ключами мин/макс цены товаров полученные запросом к базе в соответствующей категории товаров. А шаг рассчитывается делением макс значения на 10/100/1000... в зависимости от знаков макс значения, с округлением.

Запрос по фильтру, это выдача покупателю найденных (или нет) товаров, с сохранением в фильтре набора. То есть, если был сделан запрос по фильтру, то список должен отображать выбранную категорию, а слайдер цен должен инициализироваться не только по значениям этой категории, но и отображать то состояние, в которое его установил пользователь.

Вот это называется "довести до ума". Чем вы там торгуете, одна ли группа товаров и почему 0 руб, это идеально, только богу и вам известно. Если так надо, то тему можно закрыть. Если нет групп товаров, и все едино, а нужно только мин и макс, то делайте запрос в базу, получайте эти значения, передавайте их в шаблонизатор, и закрывайте тему.

Последний раз редактировалось laimas, 09.04.2018 в 15:22.
Ответить с цитированием