繁体   English   中英

Yii-如何在CGridView中显示用户自己上传的数据?

[英]Yii - How To Display User's Own Uploaded Data In CGridView?

我正在从事允许用户执行上载和下载数据的项目的每个人。 我只想在CGridView中显示用户自己上传的数据。 这是我的关系表 在此处输入图片说明

我试图编辑我的页面-> views / file / myUploads.php

<?php
$isMine=Yii::app()->user->id; // I have tried this
if($isMine){
    $this->widget('zii.widgets.CGridView',array(
    'id'=>'file-grid',
    'dataProvider'=>$model->search(),
    //'filter'=>$model,
    'columns'=>array(
        'name'
        'description',
        'category'
        'uploader'
        'upload_date',
        array(
            'header'=>'Actions',
            'class'=>'bootstrap.widgets.TbButtonColumn',
                'template'=>'{delete}', //'visible'=> (Yii::app()->user->getLevel()==1),
                'deleteConfirmation'=>"js: 'Are you want to delete '+$(this).parent().parent().children(':first-child').text()+ '?'",        
                'buttons'=>array(
                    'delete' => array(
                        'visible'=> '$data->pengunggah==Yii::app()->user->id',
                    ),
                )   
        ),
    ),
)); }
?>

我已经尝试了上面的代码,但是页面仍然显示所有数据,而不是用户自己的数据。

我也尝试在FileController.php中编辑myUpload函数

public function actionMyUpload()
{
    $isMine=Yii::app()->user->id; // I have tried this
    if($isMine){
        $model=new File('search');
        $model->unsetAttributes();  // clear any default values
        if(isset($_GET['File']))
            $model->attributes=$_GET['File'];

        $this->render('myUpload',array(
        'model'=>$model,
        ));
    }
}

但是仍然显示所有数据。

谁能帮我? 非常感谢。

还原所有更改,打开您的模型类文件,即“ File.php” ,并将此行添加到search()函数中:

$criteria=new CDbCriteria;
// Simply add this line 
$criteria->addCondition('id_user='.Yii::app()->user->id);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM