например для пользовательской части сайта есть записи возвращающие сформированный tpl в ajax
protected function EventInfoboxInfoBlog() {
// * Если блог существует и он не персональный
if (!is_string(F::GetRequest('iBlogId'))) {
$this->Message_AddErrorSingle($this->Lang_Get('system_error'));
return;
}
if (!($oBlog = $this->Blog_GetBlogById(F::GetRequest('iBlogId'))) /* || $oBlog->getType()=='personal'*/) {
$this->Message_AddErrorSingle($this->Lang_Get('system_error'));
return;
}
// * Получаем локальный вьюер для рендеринга шаблона
$oViewer = $this->Viewer_GetLocalViewer();
$oViewer->Assign('oBlog', $oBlog);
// Тип блога может быть не определен
if (!$oBlog->getBlogType() || !$oBlog->getBlogType()->IsPrivate() || $oBlog->getUserIsJoin()) {
// * Получаем последний топик
$aResult = $this->Topic_GetTopicsByFilter(array('blog_id' => $oBlog->getId(), 'topic_publish' => 1), 1, 1);
$oViewer->Assign('oTopicLast', reset($aResult['collection']));
}
$oViewer->Assign('oUserCurrent', $this->oUserCurrent);
// * Устанавливаем переменные для ajax ответа
$this->Viewer_AssignAjax('sText', $oViewer->Fetch('commons/common.infobox_blog.tpl'));
}
Однако в админке подобные записи не работоспособны, да и примеров в родных экшнах нет, подскажите как правильно использовать эту запись
$oViewer = $this->Viewer_GetLocalViewer();
$oViewer->Assign('oBlog', $oBlog);
$oViewer->Assign('oUserCurrent', $this->oUserCurrent);
$this->Viewer_AssignAjax('sText', $oViewer->Fetch('commons/common.infobox_blog.tpl'));
в админке?
Если использовать просто ajax все работает:
а если пробовать так:
не работает
Как только подключаю строку
$this->Viewer_AssignAjax(«sText», $oViewer->Fetch(«commons/common.infobox_blog.tpl»)
сразу ошибка — шаблон не найден в директории, хотя я его уже куда только не прикладывал
Как раз к вашему ответу пробовал это использовать. Коллективный разум — работает быстрее))