Сохранение XML из шаблона Yii?

Добрый день. Потребовалась отдавать пользователю XML файлом.

Работаю в yii. Для удобности сделал себе несколько базовых шаблонов и наполняю их информацией.

Генерировать его решил с помощью $this->render('export_xml', array('data'=>$data));

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

Решил этот вопрос сделав себе пустой лэйаут и $this->layout = '//layouts/blank'; Но мне кажется, что есть более логичное и правильное решение, только найти его пока не могу.

И второй, самый главный вопрос. Можно ли заставить отдавать шаблон файлом?
  • Вопрос задан
  • 3960 просмотров
Пригласить эксперта
Ответы на вопрос 3
calg0n
@calg0n
Чтобы лэйаут не подгружался юзайте renderPartial():
$this->renderPartial('export_xml', array('data'=>$data));

Можно ли заставить отдавать шаблон файлом?

Что вы имеете в виду?
Ответ написан
Gibbzy
@Gibbzy
Причем тут вообще шаблон?
Разве при том что
$this->layout = false; — В контроллере.
А дальше ставите любые headres, например те что от xml файла и выводите все что угодно.
Ответ написан
Комментировать
@gsd


header('Content-Description: File Transfer');
header('Content-type: text/xml');
header('Content-Disposition: attachment; filename=filename.xml');

Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы