【问题标题】:How to get the result of query bulider in View Yii?如何在 View Yii 中获取查询生成器的结果?
【发布时间】:2017-08-15 01:29:01
【问题描述】:

我有这样的动作:

public function actionUpdate_daily($id) {
    $model = new Timesheet('searchbyvoyage');
    $model->unsetAttributes();  // clear any default values
    if (isset($_GET['Timesheet']))
        $model->attributes = $_GET['Timesheet'];

    $modelvoyage = $this->loadModelvoyage($id);
    //$vo = $this->loadVo($id, $id_voyage_order);

    $command = Yii::app()->db->createCommand(
                    "SELECT a.id_timesheet, a.id_voyage_order, COALESCE(b.duration,0) duration FROM timesheet a LEFT JOIN  
                    ( SELECT x.* 
                             , MAX(y.id_timesheet) previous
                         FROM timesheet X 
                         JOIN timesheet Y 
                           ON y.id_voyage_order = x.id_voyage_order 
                          AND y.id_timesheet < x.id_timesheet 
                        GROUP 
                           BY x.id_timesheet
                     ) b
                    ON b.previous = a.id_timesheet
                 WHERE a.id_voyage_order =".$id)
                ->queryAll(); ///        var_dump($command);  //       die();

 //   Yii::app()->params['MyVar'] = $command;


    $this->render('update_daily', array(
        'model' => $model,
        'modelvoyage' => $modelvoyage,
        'command' => $command
    ));
}

然后我想在查看文件 update_daily.php 中显示查询结果,使用列 Duration 的小部件:

   $this->widget('bootstrap.widgets.TbGridView', array(
 'columns' => array(
                    'name'=> 'Duration',
                    'value'=> $command,
                ),

)

但是,它不起作用并出错。

【问题讨论】:

    标签: php view yii


    【解决方案1】:

    您可以参考此link 打印并检查您的查询是否是最新的

    也用

    print_R($command);die();
    

    在渲染上方检查查询返回的结果

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-05-22
      • 2021-07-08
      • 2013-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-05
      相关资源
      最近更新 更多