Большая проблема с полем МУЛЬТИВЫБОР. Как решить?

InstantCMS 2.X
#1 3 октября 2019 в 10:19
На сайте в типе контента есть поле мультивыбор с выводом в фильтры и включенной опцией "Автоссылка".

Уже второй день как записи слетают при клике по Автоссылке. Т.е в самой записи показывается выбранный вариант, но при клике по нему открывается пустая страница. После пересохранения записи, она появляется.

В последующем баг проявляется при добавлении новых вариантов в поле выбора. Все страницы вновь по автоссылке становятся пустыми.

Как можно решить эту проблему оперативно? Проект встал колом:(
#2 3 октября 2019 в 11:00

Как можно решить эту проблему оперативно ?

Def
выявить корень проблемы

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

Из вашего описания пока ничего не понятно.
А повторить нет возможности.
#3 3 октября 2019 в 11:28

В последующем баг проявляется при добавлении новых вариантов в поле выбора. Все страницы вновь по автоссылке становятся пустыми.

Def

Да да, новые варианты "ломают" поиск и фильтры, помогает простое пересохранение.

Fuze писал что это не баг, а особенность работы движка.

Я 500 профилей помню пересохранил, мне хватило))) сейчас хочу добавить значение, но останавливает что то)

Я уверен в одном, тут должно быть изящное решение проблемы, например скрипт по крону или по кнопке пересохраняющий профили или контент после изменения или что то в этом роде, если нельзя внести изменения в работу instantcms.
#4 3 октября 2019 в 11:32

Я 500 профилей помню пересохранил, мне хватило))) сейчас хочу добавить значение, но останавливает что то)

Александр

Так странно как-то это. Ведь если список не меняется в своем порядке, а только дополняется, то ломаться не должно, ибо это же не гибко как-то. Забыл один пункт и даже ниже его не поставить.
#5 3 октября 2019 в 11:39
Про поле join /forum/thread31110-1.html (возможно, что жизнь — боль).
#7 3 октября 2019 в 13:30
Называется не знал про 500, надо 800 )
#8 3 октября 2019 в 14:44
а как быть с профилем пользователей, а для типов контента хорошо
#9 3 октября 2019 в 16:10
Только "Конструктор списков" от dwd поможет с этим. Я лично офигел, когда добавив новое значение в поле "мульти-список" увидел, что страницы фильтрации остались пустыми (они у меня вообще-то под трафик заточены). Пришлось пол дня убить на написание бота, который пересохранит больше 1000 записей.

С конструктором такая проблема отсутствует.
#10 3 октября 2019 в 16:37
Def, опишите, как повторить. Во-первых, ничего не понятно, во-вторых, из того, что написали — у меня всё работает корректно. Кроме добавления значения в середину списка. Белую страницу я так и не увидел. Кроме того, включите режим отладки что ли.
#11 3 октября 2019 в 17:42
Fuze, отвечу за Def. Только что воспроизвел проблему на демо.

В типе контента "Новости" создаем поле типа "Выбор мультисписок" (к примеру с двумя предустановленными значениями):

1|Один
2|Два

Включаем отображение поля в фильтре.

Добавляем/редактируем новость и выбираем какое-либо значение.

Теперь, находясь в разделе с новостями, мы используем фильтр по созданному полю (https://demo.instantcms.ru/news?test%5B%5D=1) — выводяться записи, которым мы присвоили эти значения.

А теперь открываем для редактирования наше поле и добавляем еще одно значение:

1|Один
2|Два
3|Три

Теперь при попытке отфильтровать записи (которым мы уже задавали значение (например: Один)), мы видим "Нет новостей для отображения", хотя в самой новости значение установленно. Запись появляется в результатах фильтрации, только после ее пересохранения.
#12 3 октября 2019 в 18:28

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

@Kerncraft1
Это понятно, т.к. особенность поля, ибо там битовая маска.

Вопрос был о

Т.е в самой записи показывается выбранный вариант, но при клике по нему открывается пустая страница.

Def
Что такое пустая страница? Вообще белая страница или "Нет новостей для отображения"?
#13 4 октября 2019 в 17:16
Извиняюсь, что написал чуть сумбурно. Да, пишет, что нет записей. То есть получается, что создав значения, они становятся вечными константами без возможности добавить новые ниже.
#14 5 октября 2019 в 10:21
1|Один
2|Два
3|Три
При таких предустановленных значениях, вроде при не выбранном значении пользователем — выбиралось в записи значение "1|Один". В поле join преимущество, что работает как "И" \ "ИЛИ" при фильтрации. Если потом захочется "ИЛИ" возможно придется добавить к 800.
#15 5 октября 2019 в 14:48
Def, дело говорит, тут нужно решение или костыль чтобы обойти особенности битовой маски

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