0

Yii Bootstrap TbGridView を使用して、CSqlDataProvider から DataProvider を表示しています。ただし、値を画面に表示することはできません。何が起こったのかわかりません。これが私のコードです:

コントローラーページ:

$model = new ReportOptionForm('search');

$sql = 'SELECT c.client_id as "ProspectID", c.name as "ProspectName", count(t.activity_id) as "CallCount", c.created_on as "ProspectDate", con.name as "Consultant"';
$sql .= ' FROM clients c LEFT OUTER JOIN consultants con ON c.CIC = con.con_id LEFT OUTER JOIN client_activities t ON c.client_id = t.client_id';
$sql .= ' WHERE c.status = '.Client::TYPE_PROSPECT;

if(!($con_id == ''))
{
    $sql .= ' AND c.CIC ='. $con_num;
}

if(!($team == ''))
{
    $sql_count .= ' AND con.tm_id = '.$team;    
}

if (!($startTs == NULL) && !($endTs == NULL)) {
    $sql .= ' AND DATE(c.created_on) between "'.$startTs.'" and "'.$endTs.'"';
}               
$sql .= ' GROUP BY c.client_id';

$dataProvider = new CSqlDataProvider($sql, array(
            'totalItemCount' => 100,
            'keyField' => 'ProspectID',
            'sort' => array(
                    'defaultOrder'=>'ProspectID ASC',
            ),
            'pagination'=>array(
                    'pageSize'=>$pageSize,
            ),
        ));

$render = Yii::app()->request->isAjaxRequest ? 'renderPartial' : 'render';
$this->$render('prospect',array(
                'model'=>$model,
                'dataProvider'=>$dataProvider,
                'pageSize'=>$pageSize,
)); 

プロスペクト ビュー ページ:

$gridWidget=$this->widget('bootstrap.widgets.TbGridView',array(
    'id'=>'report-grid',
    'dataProvider'=>$dataProvider,
    'columns'=>array(
        array(
            'name'=>'No',
            'value'=>'$row+1',
            'htmlOptions'=>array('style'=>'text-align:center'),
        ),

        array('name'=>'Prospect Date', 'type'=>'raw', 'value'=>$data->ProspectDate),
        array('name'=>'Prospect Name', 'type'=>'raw', 'value'=>$data->ProspectName),
        'Consultant'        
    ),
)); 

ローカル サーバーでテストを行います。エラーはありませんが、値は次を使用してループされます。

array('name'=>'Prospect Date', 'type'=>'raw', 'value'=>$data->ProspectDate),

この列の値は表示されません。ただし、「コンサルタント」の列には、値を表示できます。別の問題は、ファイルを実サーバーにアップロードしたときにエラーが発生することです。

Undefined variable: data

ここで、データは$data->ProspectDateを指し ます 誰かがそれを理解するのを手伝ってくれますか? 問題は何ですか?

4

0 に答える 0