Настройка наборов на основе полей "список:мультивыбор"

#1 16 декабря 2015 в 01:00
Возникла у меня необходимость сделать на страницах определённого типа контента наборы, для более удобной навигации, да ещё и по полю список: мультивыбор. И сразу же я столкнулся с проблемой… В отличии от обычного списка, где в фильтре набора указываем порядковый номер значения в поле, либо заранее заданный айдишник для этого значения, список: мультивыбор сохраняет данные в формате true или false и если у Вас будет поле со следующими значениями:
один
два
три
, то в таблице отмеченные при создании записи значения "один" и "три" будут выглядеть, как 101. Всё верно! В массиве 3 значения, первое и третье true, но как же обработать эти значения для того, чтобы выдать в наборе все записи со значением "один" или "два"?
Ответ простой — используем для формирования фильтра условие "содержит" или "начинается с" (разницы нет. и там и там используется like в запросе. и в значении выставляем 1_1 😊Так мы выведем все записи, в которых отмечены значения "один" и "три" нашего поля типа список: мультивыбор. Вердикт: для формирования фильтров по полю список: мультивыбор используем метасимвол _, которым заполняем все ненужные нам значения в данных, которые содержатся в базе.
#2 6 февраля 2016 в 09:14
Тоже столкнулся с этой проблемой. Однако "1_1" выведет записи где отмечены и "один" и "Три". А вот как сделать "Один" ИЛИ "Три" ИЛИ оба?
Кто-нибудь решил это?
А ёщё лучше бы реализовать функцию "ИЛИ" для условий. То есть, добавил одно условие, а если хочешь добавить ещё одно, то появляется выбор "И-ИЛИ" то есть при совпадении условий или и то и то является возможным. Это бы вообще всё решило.
#3 11 февраля 2016 в 21:02
мало того что мультивыбор не работает с большим количеством значений, так еще и эта проблема не решена. Полем пользоваться невозможно!
#4 11 февраля 2016 в 23:14

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

rdimrs
опишите в каких случаях не работает
#5 12 февраля 2016 в 12:01


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

rdimrs
опишите в каких случаях не работает

yury
У меня в поле мультивыбор предустановленно 112 значений, например, я в чекбоксах выбираю значения 1, 5, 12, 64, 65, 100 нажимаю сохранить и сохраняются только 1, 5, 12, 64. Все что идет после 64 не сохраняется.

И вторая проблема как в этой теме, есть запись в типе контента в которой выбраны значения в чекбоксах 1, 2, 3 и если в фильтре выбрать например значения 2, то нельзя отфильтровать записи где присутствует значение 2, фильтрует только если в фильтре заданы все три чекбокса как и в самой записи.
#6 30 октября 2017 в 00:04


Тоже столкнулся с этой проблемой. Однако "1_1" выведет записи где отмечены и "один" и "Три". А вот как сделать "Один" ИЛИ "Три" ИЛИ оба?
Кто-нибудь решил это?
А ёщё лучше бы реализовать функцию "ИЛИ" для условий. То есть, добавил одно условие, а если хочешь добавить ещё одно, то появляется выбор "И-ИЛИ" то есть при совпадении условий или и то и то является возможным. Это бы вообще всё решило.

Олег с клещами
В одном из проектов, возник тот же вопрос.
Это как-то решаемо?
#7 13 декабря 2017 в 00:45
Вопрос все еще актуален! При необходимости готов оплатить решение данной задачи.
#8 13 декабря 2017 в 10:57

Вопрос все еще актуален! При необходимости готов оплатить решение данной задачи.

vladiart
Просто размышляю: а если вместо этого поля. где выбираете варианты из трех, сделать три поля типа "Флаг"? по ним уже и фильтровать и наборы делать. А по отображению их так же, версткой пошаманить…
#9 13 декабря 2017 в 11:02

У меня в поле мультивыбор предустановленно 112 значений, например, я в чекбоксах выбираю значения 1, 5, 12, 64, 65, 100 нажимаю сохранить и сохраняются только 1, 5, 12, 64. Все что идет после 64 не сохраняется.

И вторая проблема как в этой теме, есть запись в типе контента в которой выбраны значения в чекбоксах 1, 2, 3 и если в фильтре выбрать например значения 2, то нельзя отфильтровать записи где присутствует значение 2, фильтрует только если в фильтре заданы все три чекбокса как и в самой записи.

rdimrs

Вопрос все еще актуален! При необходимости готов оплатить решение данной задачи.

vladiart
Есть реализация данного поля не через запись значений вида 0101010 в колонку записей (ибо при удалении значения, выбранные значения у записей смещаются), а через дополнительную таблицу join с выбранными значениями с возможностью в настройках задать логический оператор and или in пример скинул в личку
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.