2016-08-07 2 views
0

Я хочу, чтобы мой CgridView мог отображать только роль «ученика» из Authassignment Model, я прочитал несколько уроков, но ни один из них не показал этого. Пожалуйста, помогите мне, это связано с моей диссертацией.Пользовательские представления для cgridview на основе роли

<?php 

$this->widget('zii.widgets.grid.CGridView', array(
    'id'=>'users-grid', 
    'dataProvider'=>$model->search(), 
    // 'filter'=>$model, 
    'columns'=>array(

     'userID', 
     'lastname', 

     array(
      'class'=>'bootstrap.widgets.TbButtonColumn', 
     ), 
    ), 
)); 

?> 

 

StudentView

+0

ли GridView для вашей модели Authassignment? Или ваша модель пользователя? –

+0

это от модели пользователя –

+0

вы можете ссылаться на этот URL для доступа на основе ролей в YII: ** http: //www.yiiframework.com/doc/guide/1.1/en/topics.auth** –

ответ

0

Привет Пожалуйста, обратитесь это как предложение

Я не знаю, Что ваш table structure это, но лучший способ сделать это может быть. Создание в user tablefield имени user_role и в момент вставки значения создания пользователя в этом, как 1 for admin 2 for student, а затем вы можете легко получить только студент role по методу ниже, как

public function actionIndex() 
    { 
     $model=new User('search'); 

     $model->unsetAttributes(); // clear any default values 
     $model->user_role = 2;// for student role 
     if(isset($_GET['User'])) 
      $model->attributes=$_GET['User']; 

     $this->render('index',array(
      'model'=>$model, 
     )); 
    } 
Смежные вопросы