Как вывести в поле name а в чанк snippet?
Всем доброго времени суток, формучане.
Недавно додумался до такой крутой фичи, как вывод модулей типового шаблона в зависимости от значений таблицы MIGX. В чём идея:
Любой криволапый манагер может в ресурсе с соответствующим шаблоном-сборщиком добавлять/удалять любые модули из категории «модули сборки шаблона (2)» и выбирать порядок сортировки этих модулей (распределить шаблон на модули было просто — спасибо БЭМу на стадии вёрстки).
Но без детских (но ооочень назойливых) проблем не обошлось
Задача как раз по MIGX. Я написал конфигурацию таблицы. Поковырявшись в базе вышло всё так:
1) В выпадающий список чанков падает внутренняя разметка чанка, а не его имя. Из полей ресурса выглядит это крайне упорото. @SELECT `snippet` AS `name` не помог. Ибо тогда getImageList начинает выводить имена чанков вместо их содержимого.
2) Менее важно но тоже связано с неудобством. Почему в таблице, после добавления строки, в строку ничего не выводится? Визуально, после добавления модуля, ячейки остаются пустыми и это немного конфьюзит мою ранимую детскую психику.
Разметка колонок вот:
UPD
Последнее я решил. Надо было внимательнее читать доки: dataIndex у меня был указан неверно — этот параметр отвечает за рендер данных в таблицу. Но разметка в таблице это всё же упорото…
Недавно додумался до такой крутой фичи, как вывод модулей типового шаблона в зависимости от значений таблицы MIGX. В чём идея:
Любой криволапый манагер может в ресурсе с соответствующим шаблоном-сборщиком добавлять/удалять любые модули из категории «модули сборки шаблона (2)» и выбирать порядок сортировки этих модулей (распределить шаблон на модули было просто — спасибо БЭМу на стадии вёрстки).
Но без детских (но ооочень назойливых) проблем не обошлось
Задача как раз по MIGX. Я написал конфигурацию таблицы. Поковырявшись в базе вышло всё так:
[
{"caption":"Настройки модуля",
"fields":
[
{"field":"Sort_number",
"caption":"Sort_number",
"inputTVtype":"number"
},
{"field":"module",
"caption":"module",
"inputTVtype":"listbox",
"inputOptionValues":"@SELECT `snippet` FROM `dbpref_site_htmlsnippets` WHERE `category` = 2"
}
]
}
]
Да, это работает. Но есть 2 проблемы:1) В выпадающий список чанков падает внутренняя разметка чанка, а не его имя. Из полей ресурса выглядит это крайне упорото. @SELECT `snippet` AS `name` не помог. Ибо тогда getImageList начинает выводить имена чанков вместо их содержимого.
2) Менее важно но тоже связано с неудобством. Почему в таблице, после добавления строки, в строку ничего не выводится? Визуально, после добавления модуля, ячейки остаются пустыми и это немного конфьюзит мою ранимую детскую психику.
Разметка колонок вот:
[
{"header": "Порядковый номер", "width": "500", "sortable": "true", "dataIndex": "title"},
{"header": "Модуль", "width": "500", "sortable":
"true","dataIndex":"list"}
]
Всем заранее спасибо за вашу помошь)UPD
Последнее я решил. Надо было внимательнее читать доки: dataIndex у меня был указан неверно — этот параметр отвечает за рендер данных в таблицу. Но разметка в таблице это всё же упорото…
Комментарии: 2
Создать TV — селект с возможными значениями @SELECT `name`,`snippet` FROM `dbpref_site_htmlsnippets` WHERE `category` = 2"
Сделать так:
Тогда у вас будет структура chunkName==chunk_html_code|| и т.д.
Отображаться в селектах будет имя чанка, а выводить соответственно содержимое
Сделать так:
{"field":"module","caption":"module","inputTV":"название выше созданной TV"}
Теоретически можно этот же запрос пихнуть сразу вместо вашего.Тогда у вас будет структура chunkName==chunk_html_code|| и т.д.
Отображаться в селектах будет имя чанка, а выводить соответственно содержимое
Теоретически можно этот же запрос пихнуть сразу вместо вашего.Этот вариант сработал. В dropdown выводятся имена, в таблицу и на front уходит уже разметка, но это не критично — напишу дескрипшен — контентщики поймут) Спвсибо
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.