0

我在模型的 view.php 中有以下代码:

<?php $this->widget('zii.widgets.CDetailView', array(
'data'=>$model,
'attributes'=>array(
    'id',
    'name',
    'cat_id',
    'price',
            array(
                'name' => 'create_date',
                'header' => 'Create Date',
                'value' => 'Yii::app()->dateFormatter->format("yyyy-MM-dd HH:mm:ss", $data->create_date)'
            ),
    array(
                'name' => 'update_date',
                'header' => 'update Date',
                'value' => 'Yii::app()->dateFormatter->format("yyyy-MM-dd HH:mm:ss", $data->update_date)'
            ),
            array(
                'name' => 'last_visit_date',
                'header' => 'Last visit Date',
                'value' => 'Yii::app()->dateFormatter->format("yyyy-MM-dd HH:mm:ss", $data->last_visit_date)'
            ),
    'hit',
    'update_count',
    'status',
    'sold',
    'active',
),

)); ?>

但我明白了

Yii::app()->dateFormatter->format("yyyy-MM-dd HH:mm:ss", $data->last_visit_date)

而不是转换后的日期。我在 admin.php 中使用它,它可以,但在 view.php 中它不是。

4

2 回答 2

2

删除引号,使用这个:

'value' => Yii::app()->dateFormatter->format("yyyy-MM-dd HH:mm:ss", $model->last_visit_date)
于 2014-05-05T06:24:32.923 回答
2

您需要删除引号,因为 CDetailView 只能显示一条记录。我认为您还需要像这样将 $data 更改为 $model :

'value' => Yii::app()->dateFormatter->format("yyyy-MM-dd HH:mm:ss", $model->create_date)

如果要显示多条记录,可以使用CListView

笔记:

在 CDetailView 中,您使用的CModel数据,而在 CListView 中,您使用的是dataProvider

于 2014-05-05T06:28:34.700 回答