이상한 문제가 있습니다. 프로덕션 환경 (Windows에서 우분투로)에 내 웹 사이트를 복사했습니다. 나는 크고 작은 편지 문제를 해결하고 응용 프로그램이 잘 작동하기 시작했습니다. 레이아웃없이 렌더링되는 것처럼 보이는 한 페이지를 입력 할 때까지. 오류가 없습니다. - 또한 방화범이 끌리는 CSS 스타일이나 아무것도 표시하지 않습니다. HTML 소스에는 레이아웃 코드가 부족합니다. 그 이유가 무엇일까요?Yii는 레이아웃이없는 한 페이지 만 렌더링합니다.
편집 :
컨트롤러 부분 : 그것은 CActiveDataProvider을 반환
$dataProvider = Projects::model()->getInviteProjectsProvider();
$this->render('invite', array(
'dataProvider' => $dataProvider
));
.
보기 : - 그것은 잘 보여줍니다
<?php
$this->breadcrumbs=array(
'Projekty' => array('admin'),
'Zapraszanie',
);
$this->renderPartial('_allMenu');
?>
<link rel="stylesheet" type="text/css" href="<?php echo $this->module->assetsUrl; ?>/css/projects.css"/>
<h1>Projekty aktywne - zapraszanie</h1>
<?php
$this->widget('bootstrap.widgets.TbExtendedGridView', array(
'id' => 'invite-grid',
'type' => 'striped condensed',
'dataProvider' => $dataProvider,
'rowCssClassExpression' => '($data->leftCustomers<100) ? "error":""',
'columns' => array(
array(
'name' => 'idProject',
'htmlOptions' => array('width' => '60px', 'style' => 'text-align: right;', 'class' => 'gridIdColumn'),
),
'name',
array(
'name' => 'leftCustomers',
'header' => 'Pozostało <i class="icon-info-sign" rel="tooltipbootstrap" data-original-title="Gdy wartość ta jest mniejsza niż 100 - rekord jest podświetlony na czerwono"/>',
),
'confirmStart',
'presentationDate',
array(
'class' => 'bootstrap.widgets.TbRelationalColumn',
'name' => 'Statystyki',
'value' => '"Pokaż"',
'url' => $this->createUrl('dynamicProjectStats')
),
array(
'header' => 'Postęp <i class="icon-info-sign" rel="tooltipbootstrap" data-original-title="Liczba zaproszeń/Limit zaproszeń"/>',
'value' => function($data)
{
$prc = round(($data->projectMaxInvites > 0) ? ($data->projectInvites)/ $data->projectMaxInvites * 100 : 0, 2);
Controller::widget('bootstrap.widgets.TbProgress', array(
'percent' => $prc,
'htmlOptions' => array(
'style' => 'height: 20px; margin-bottom: -20px',
'rel' => 'tooltipbootstrap',
'data-original-title' => $prc." %",
),
));
},
),
array(
'class' => 'bootstrap.widgets.TbButtonColumn',
'template' => '{view}{update}{delete}',
'htmlOptions' => array(
'style' => 'width: 40px;',
),
),
array(
'header' => '',
'htmlOptions' => array('style' => 'width: 43px'),
'value' => function($data)
{
$this->renderPartial('partials/_actionMenu', array('idProject' => $data->idProject, 'activated' => true, 'afterAction' => 'removeActiveProject'));
}
),
array(
'header' => '',
'value' => function($data)
{
$this->renderPartial('partials/_statMenu', array('idProject' => $data->idProject, 'showIcon' => true));
}
),
)
));
?>
은 내가 function($data)
가 사용되는 열을 주석 경우 것으로 나타났습니다. 나가면 레이아웃이 표시되지 않습니다.
EDIT2 : 어쩌면 내가 partials/_statMenu
및 partials/_actionMenu
내부 렌더링 bootstrap.widgets.TbButtonGroup
위젯이 있다는 사실을 주목해야한다.
가 –
당신이보기 (당신이() 메소드 렌더링 호출 컨트롤러 액션의 조각)를 렌더링하는 데 사용하는 코드를 게시하시기 바랍니다 난 단지 왼쪽 마지막 칼럼이지만'$ this-> renderPartial ('pqrtials/_statMenu'...')라고 주석을 달았고'function ($ data)'레이아웃을 사용하여 열의 위젯/부분을 렌더링하는 것처럼 보입니다. Windows가 작동합니다. – Joe
대신 Yii :: app() -> controller-> renderPartial을 사용해보세요. 작동합니까? –