Страница 1 из 1
Обьясните плз кусок кода
Добавлено: 2014.03.04, 18:00
xoma_204
Здавствуйте, помогите плз никак не могу понять,
Обяьсните плз кусок кода
Код: Выделить всё
public function actionIndex(){
Yii::app()->user->setState('searchUrl', NULL);
Yii::app()->getModule('apartments');
$criteria = new CDbCriteria;
$criteria->condition = 'is_special_offer = 1';
if(isset($_GET['is_ajax'])){
$this->renderPartial('index', array(
'criteria' => $criteria,
), false, true);
}else{
$this->render('index', array(
'criteria' => $criteria,
));
}
}
Почему render_partial находится в функции??? разве он не должен быть в виде?
что вообще происходит тут??
Re: Обьясните плз кусок кода
Добавлено: 2014.03.04, 18:43
ApJIeKuHo
Потому что есть условие на аякс.
Т.е. если мы просим информацию откуда то из другого места то мы уже имеем куда ее вставлять. Соответственно нам вся страница целиков не нужна.
Re: Обьясните плз кусок кода
Добавлено: 2014.03.04, 19:31
xoma_204
Оюбя сните плз что призойдет в этом случае
Код: Выделить всё
$this->renderPartial('index', array(
'criteria' => $criteria,
), false, true);
А что произойдет в этом?
Код: Выделить всё
$this->render('index', array(
'criteria' => $criteria,
));
В чем отличия???? просто понять не могу во втором случае вроде все ясно: берем кусок html рендерим в слой
а в первом случае???
Re: Обьясните плз кусок кода
Добавлено: 2014.03.04, 20:02
twix
$this->render() - рендерит всю страницу целиком - шаблон+вьюха
$this->renderPartial() - рендерит только вьху, без шаблона.
Re: Обьясните плз кусок кода
Добавлено: 2014.03.04, 20:10
xoma_204
twix писал(а):$this->render() - рендерит всю страницу целиком - шаблон+вьюха
$this->renderPartial() - рендерит только вьху, без шаблона.
НЕ понял...и что он делает с этим куском html????ведь страница должна показываться целиком
Re: Обьясните плз кусок кода
Добавлено: 2014.03.04, 20:50
ApJIeKuHo
Не всегда, например при подгрузке элементов на странице использовать следует renderPartial()
Re: Обьясните плз кусок кода
Добавлено: 2014.03.04, 23:11
flashimage
xoma_204 писал(а):twix писал(а):$this->render() - рендерит всю страницу целиком - шаблон+вьюха
$this->renderPartial() - рендерит только вьху, без шаблона.
НЕ понял...и что он делает с этим куском html????ведь страница должна показываться целиком
Применяется когда надо отрендерить часть страницы из файла, или при ajax
Re: Обьясните плз кусок кода
Добавлено: 2014.03.04, 23:23
S c
xoma_204 писал(а):twix писал(а):$this->render() - рендерит всю страницу целиком - шаблон+вьюха
$this->renderPartial() - рендерит только вьху, без шаблона.
НЕ понял...и что он делает с этим куском html????ведь страница должна показываться целиком
если это аякс запрос - от отдаётся кусок html кода, который будет вставлен в определенное место страницы, с которой был отправлен аякс