Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Использовать в админке выдачу шаблона другого компонента

21.06.2012, 17:06
WSPro
Артем Зуев

Зарегистрирован:
2009-12-16
Сообщений: 3

Входные данные:
- два компонента, у обоих есть по два шаблона - основной для вывода информации + администрирование
- в одном из компонентов (назовем его cc1) есть еще один шаблон XX, который формирует данные в JSON-формате
- во втором компоненте производится вызов через s_list_class(sub, cc1, 'nc_ctpl=XX'), разбитие строки в массив и дальнейшая генерация работы

Вот прикол в том, что при таком чтении в шаблонах вывода - все ок, работает, но если попытаться провернуть ту же фишку в коде альтернативной формы добавления/изменения данных
Код:

"; $j_str = s_list_class(sub, cc1, 'nc_ctpl=XX'); $addForm .= "

возвращается пуская строка.

Попытка использовать конструкцию вида по совету технической поддержки:
Код:

"; $old = $nc_core->admin_mode; $nc_core->admin_mode = 0; $admin_mode = 0;
$j_str = s_list_class(sub, cc1, 'nc_ctpl=XX');
$admin_mode = $nc_core->admin_mode = $old; $addForm .="

привела к не совсем тому результату - идет обращение к основному шаблону компонента cc1 (как будто просто производится вызов $j_str = s_list_class(sub, cc1)).
Но необходимо получить данные от компонента ИМЕННО В УКАЗАННОМ шаблоне... Варианты городить кучу условий в основном шаблоне и делать рекурсивный подзапрос "сам-к-себе" с указанием нужного шаблона не самый удачный вариант =( хотя бы потому, что тогда потребуется кучу переменных переформировывать в строку...

Кто сможет предложить вариант получить выдачу определенного шаблона компонента через вызов из альтернативной формы добавления/изменения другой формы...

wspro
22.06.2012, 18:38
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

А получить нужные данные напрямую sql-запросом - не вариант?

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

Когда работа идет только на чтение, то нафиг огород городить? Делайте напрямую sql-запрос, это и проще и работать будет быстрее на порядок. Ну на крайний случай можно отдельную функцию сделать и туда нужные алгоритмы вынести.

Temet nosce...
198 196 2012-06-22 18:38:35 12392
Описание проекта