Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Здравствуйте!
Пишу фильтр для интернет магазина и столкнулся с проблемой.
Для фильтрации я использую ссылки такого типа - {{route('filter', ['color' => 'red')}}, и все работает все замечательно если фильтровать только по цвету или размеру, но что если нужно отфильтровать сначала по цвету, а затем по размеру, например: сначала я выбираю синий цвет, а затем кликаю на размер М и в результате я должен получить все синие вещи размера М.
Проблема заключается в том, что я не знаю каким образом мне отслеживать предыдущий фильтр. Насколько я понимаю, нужно либо брать значение из нынешней страницы, либо я должен просто добавлять новый параметр в ссылку, что мне кажется более логичным, но как это сделать, не знаю.
Не в сети
По-моему это очень сомнительный подход к созданию фильтров.
Вот тут очень хорошо объясняется фильтрование, но естественно нужна подписка.
Изменено Stokke (28.06.2016 13:37:12)
Не в сети
По-моему это очень сомнительный подход к созданию фильтров.
Вот тут очень хорошо объясняется фильтрование, но естественно нужна подписка.
Почему сомнительный? Дело в том, что я хотел бы упростить фильтрацию и избавится от клавиши submit, т.е. фильтрация товаров должна происходить при клике на нужную опцию.
Не в сети
По-моему это очень сомнительный подход к созданию фильтров.
Вот тут очень хорошо объясняется фильтрование, но естественно нужна подписка.
Зачем подписка, когда есть рутреккер?))
Не в сети
Почему сомнительный? Дело в том, что я хотел бы упростить фильтрацию и избавится от клавиши submit, т.е. фильтрация товаров должна происходить при клике на нужную опцию.
Да не, теперь более ясно, нормальный, это что-то я с утра "поехал" и начал что-то думать не в ту сторону.
В целом, как я и писал насчет видео, надо что-то вроде этого Dedicated Query String Filtering
Зачем подписка, когда есть рутреккер?))
Ну вообще стоимость подписки не высока, а на рутрекере вроде есть не все серии, я уже не говорю о множестве "одиночных" видосов.
Да и оплачивать её все время никто ведь не заставляет.
Изменено Stokke (28.06.2016 18:49:54)
Не в сети
Да не, теперь более ясно, нормальный, это что-то я с утра "поехал" и начал что-то думать не в ту сторону.
В целом, как я и писал насчет видео, надо что-то вроде этого Dedicated Query String Filtering
Спасибо, изучу это дело сегодня.
Не в сети
Да не, теперь более ясно, нормальный, это что-то я с утра "поехал" и начал что-то думать не в ту сторону.
В целом, как я и писал насчет видео, надо что-то вроде этого Dedicated Query String Filtering
Посмотрел видео, суть в том, что как раз с фильтрацией у меня нет проблем, она организована примерно так же. Проблема в том, что мне нужно привязать это дело к ссылкам.
Пример:
- Фильтр
--- По цене
----- 100 <a href="/filter?price=100">
----- 200 <a href="/filter?price=200">
----- 300 <a href="/filter?price=300">
--- По цвету
---- Красный <a href="/filter?color=red">
---- Синий <a href="/filter?color=blue">
--- По размеру
---- 30 <a href="/filter?size=30">
---- 31 <a href="/filter?size=31">
---- 32 <a href="/filter?size=32">
И это все работает сейчас. И, если я сделаю ссылку типа:
<a href="/filter?color=blue&size=32">
тоже все сработает
Вопрос!
Как мне сделать ссылки, которые будут добавлять или изменять необходимый атрибут?
Например:
Без фильтрации у меня был адрес сайта:
/products
Выбрал фильтр по цене и адрес сайта изменился на:
/products/filter?price=100
Затем выбрал фильтр по цвету, соответсвенно адрес сайта изменился на:
/products/filter?price=100&color=red
Ну и наконец изменил цену:
/products/filter?price=300&color=red
Не в сети
Нашел решение, может не самое красивое, но работает.
При return view, отправляю нужные параметры для фильтра, если таковых нет, то приходит null.
Ссылки строю таким образом:
Для красного цвета:
{{route('filter', ['c' => $category, 'p' => $price, 'c' => red, 'size' => $size])}}
По мере выбора фильтров ссылки у них будут "обрастать" необходимыми параметрами.
Не в сети
Уважаемый ТС.
Не могли бы вы подсказать, как вы организовали базу для характеристик товаров?
Просто сколько я не пробовал сделать характеристики для товаров, не получается нормально организовать структуру бд что бы потом можно было по ним фильтровать
Страницы 1