Не верная работа Фильтра поля Список:мультивыбор

InstantCMS 2.X
#46 2 января 2019 в 22:17
Поле "Список: мультивыбор", действительно имеет ряд проблем.

1. Невозможно добавлять пункты в уже имеющиеся Предустановленные значения. Дополнять можно только в продолжение списка, между пунктами нельзя, иначе изменятся значения в уже выбранных записях. (Подобное обсуждалось здесь: /forum/thread30360-1.html)
2. Поиск в фильтре не работает, если у одного из выбранных значений нет привязанных записей. Обсуждалось в данной теме.
3. Этот пункт покажу на примере:

Задаем значения.


В фильтре, если выбрать значения из обоих записей, то ни одна не находится.
#47 2 января 2019 в 22:52
Yar, Кто вам сказал что менять нельзя! Можно, НО! их сначала нужно было пронумеровать по такому типу: 1 | Овощи 2 | Фрукты и тд.
#48 2 января 2019 в 23:03
Capitan, я не про менять, а про добавлять.

1 | Овощи 2 | Фрукты и тд.

Capitan
Все пункты имеют именно такой вид
#49 2 января 2019 в 23:15
Я заметил такую вещь, создаем поле Цвет
  1. Черный
  2. Белый
  3. Красный
Добавляем запись с цветами Черный и Красный, в БД записывается так:
101
SQL такой WHERE (i.color LIKE '1_1%')

Потом через какое то время добавляем еще они цвет
  1. Черный
  2. Белый
  3. Красный
  4. Синий
Теперь все предыдущие записи не попадает под фильтр, так как система ищет так
WHERE (i.color LIKE '1_1_%')
т.е. ищет записи где значение поле ровна 1010
Помогает только пересохранение старых записей
#50 3 января 2019 в 00:13

их сначала нужно было пронумеровать по такому типу: 1 | Овощи 2 | Фрукты и тд.

Capitan
Так при создании Записи первый пункт по умолчанию, при 0 |, 1 | x, 2 | y будет слово Выбрать.
#51 3 января 2019 в 00:44
Это поле не для правок… Его надо один раз сделать и не трогать. Или использовать поле, которое сохраняет в базе данных значения, а не битовую маску из нулей и единиц.

И вряд ли оно когда-то изменится. Если его исправить — старые установленные значения поломаются, так нельзя. Лучше использовать другое поле, а это уже оставить как есть.
#52 4 января 2019 в 12:35
Ясно. Для себя считаю применение этого поля невозможным.

Есть ли альтернатива такому полю?
Нужно:
Мультивыбор, возможность редактирования пунктов, добавления (в т.ч. между пунктами), удаление без каких либо сдвигов, корректный поиск поиск в фильтре.
#53 4 января 2019 в 13:08

Есть ли альтернатива такому полю?

Yar
Конечно есть! Уже писал неоднократно о Поле с мультивыбором (Join)
Связывайтесь напрямик с разработчиком ideasdigger. Он это поле не выкладывал в каталоге.
Оно теперь умеет работать в режиме автонаполнения через поле Заголовок.
#54 4 января 2019 в 15:11
vikont, Значения можно добавлять/удалять между имеющимися? С поиском по фильтру, как я понял порядок...
Как при обновлении, ничего не ломается? Есть ли автоссылка?

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

vikont
а что ещё не так с полем "Список"? Значения, случайно, не смещаются также при добавление между существующими?..
#55 4 января 2019 в 16:01
Добавлять в середину, в конец списка можно. Если удалить у кого выбрано Значение, оно в записи пропадет.
#56 4 января 2019 в 16:14

Конечно есть! Уже писал неоднократно о Поле с мультивыбором (Join)

vikont

Вопрос в том можно ли без хаков использовать его в свойствах. Подозреваю что нет. Таким образом оно становится бесполезным для большинства. Так может рекламируя, стоит упоминать и об этом. Полей то можно наклепать без проблем, только толку с них чуть, если безболезненно нельзя выводить в свойствах. Вот где затык.
#57 4 января 2019 в 16:29
Не думаю, что он рекламирует это единственно работающее нормально Поле. А вот свести все к использованию Полей вероятно не помешало бы…
#58 4 января 2019 в 17:09

Так может рекламируя, стоит упоминать и об этом.

@Demonstrator
Реклама — это громко сказано… вы мне льстите… smile

это единственно работающее нормально Поле

@elv
… вот это точнее! Если заметили, то я автор данной темы и поле, о котором я пишу уже проверено временем.

безболезненно нельзя выводить в свойствах

@Demonstrator
это поле безболезненно вывести в свойствах не удастся — уже интересовались у разработчика. Если его вошьют в ядро Инстанта, тогда это станет возможным. А пока надо смотреть в сторону совместного использования с компонентом Категории для полей ICMS 2. не проверял, но судя по описанию должно работать.
#59 4 января 2019 в 17:16

Полей вероятно не помешало бы ...

@elv
Fuze прямо рекомендует использовать не грозди категорий "по седьмое колено", а поля и фильтровать контент.
Уже более полугода, как послушался его совета и с большими массивами данных стало легче работать, так как они легко выбираются фильтрами по выбранным полям.
Посмотреть это можно здесь или здесь. В последнем Возрастные категории — это поле Join, а остальные поля из свойств.
И еще один образчик использования нескольких полей
#60 4 января 2019 в 17:44

Если удалить у кого выбрано Значение, оно в записи пропадет.

@elv
Ну так это и правильно же.

Вопрос в том можно ли без хаков использовать его в свойствах. Подозреваю что нет. Таким образом оно становится бесполезным для большинства.… Вот где затык.

@Demonstrator
Я отношусь к тому меньшинству, которое, испробовав все прелести свойств благополучно от них отказалось, поэтому сей "затык" меня минует. Правда парочка свойств осталось, всё же, но при первой возможности и с ними распрощаюсь.

vikont, автоссылки нет?
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.