asep  
            (Asep Mylocal)
           
           
          
              
                April 20, 2011,  1:48am
               
               
          1 
           
         
        
          Halo… para masta yii…  
saya mau naya nih, saya mau ubah tampilan di yii, kalo saya liat codingnya secara default pake CListView untuk tampilannya terlampir, bagaimana caranya jika ingin saya ubah jadi tabel dengan judul fieldnya cukup satu saja seperti contoh dibawah ini.
======================================================
Prof | User | Dari | SMP | Jenis Track | Institusi |
======================================================
ini datanya
ini datanya
ini datanya
ini datanya
ini datanya
======================================================
di direktori protected/views/profesi/index.php
coding saya seperti ini
<?php 
// echo $model;
$this->widget('zii.widgets.CListView', array(
	'dataProvider'=>$dataProvider,
	'itemView'=>'_view',));
 
?>
 
saya ubah jadi seperti ini
<?php 
// echo $model;
$this->widget('zii.widgets.CGridView', array(
	'dataProvider'=>$dataProvider,
	'itemView'=>'_view',));
 
?>
 
Saya memanfaatkan CGridView… tapi ga bisa, hasilnya error… kenapa ya? (mohon bantuannya) 
         
         
           
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            petra  
            (Petra Barus)
           
           
          
              
                April 20, 2011,  2:02am
               
               
          2 
           
         
        
          setau saya CGridView gak punya property itemView deh,
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            asep  
            (Asep Mylocal)
           
           
          
              
                April 20, 2011,  2:34am
               
               
          3 
           
         
        
          maklum om masih asing nih sm yii    , terus bagaimana cara menggunakannya CGridView adakah langkah-langkahnya?
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            asep  
            (Asep Mylocal)
           
           
          
              
                April 20, 2011,  2:44am
               
               
          4 
           
         
        
          saya pake coding ini alhamdulillah bisa
$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'columns'=>array(
        'ProfID',
        'UserID',
        'Dari',
        'Smp',
        'JenisTrack',
        'InstitusiID',
        'Institusi',
        'PosisiPeran',
        'CatatanDanPrestasi',
        )
    )
);
 
Thanks om…
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            aqge  
            (Programmer Riau)
           
           
          
              
                April 20, 2011,  4:30am
               
               
          5 
           
         
        
          
saya pake coding ini alhamdulillah bisa
$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'columns'=>array(
        'ProfID',
        'UserID',
        'Dari',
        'Smp',
        'JenisTrack',
        'InstitusiID',
        'Institusi',
        'PosisiPeran',
        'CatatanDanPrestasi',
        )
    )
);
 
Thanks om…
 
 
emang beda sih GRidview dan ListView, beda  folder juga di Zii  nya…
congrate bro kalo dan ketemu
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            asep  
            (Asep Mylocal)
           
           
          
              
                April 21, 2011,  2:44am
               
               
          6 
           
         
        
          Untuk tampilan emang udah bener sih, cuma ada masalah lagi ni om…
Kalo pake Listview ane kan kalo mau update tinggal klik ProfID-nya yang source codingnya ada di _ivew.php yang menggunakan class view seperti di bawah ni
<div class="view">
	<b><?php echo CHtml::encode($data->getAttributeLabel('ProfID')); ?>:</b>
	<?php echo CHtml::link(CHtml::encode($data->ProfID), array('view', 'id'=>$data->ProfID)); ?>
	<br />
	<b><?php echo CHtml::encode($data->getAttributeLabel('UserID')); ?>:</b>
	<?php echo CHtml::encode($data->UserID); ?>
	<br />
	<b><?php echo CHtml::encode($data->getAttributeLabel('Dari')); ?>:</b>
	<?php echo CHtml::encode($data->Dari); ?>
	<br />
	<b><?php echo CHtml::encode($data->getAttributeLabel('Smp')); ?>:</b>
	<?php echo CHtml::encode($data->Smp); ?>
	<br />
	<b><?php echo CHtml::encode($data->getAttributeLabel('JenisTrack')); ?>:</b>
	<?php echo CHtml::encode($data->JenisTrack); ?>
	<br />
	<b><?php echo CHtml::encode($data->getAttributeLabel('InstitusiID')); ?>:</b>
	<?php echo CHtml::encode($data->InstitusiID); ?>
	<br />
	<b><?php echo CHtml::encode($data->getAttributeLabel('Institusi')); ?>:</b>
	<?php echo CHtml::encode($data->Institusi); ?>
	<br />
	<?php /*
	<b><?php echo CHtml::encode($data->getAttributeLabel('PosisiPeran')); ?>:</b>
	<?php echo CHtml::encode($data->PosisiPeran); ?>
	<br />
	<b><?php echo CHtml::encode($data->getAttributeLabel('CatatanDanPrestasi')); ?>:</b>
	<?php echo CHtml::encode($data->CatatanDanPrestasi); ?>
	<br />
	<b><?php echo CHtml::encode($data->getAttributeLabel('KeySkills1')); ?>:</b>
	<?php echo CHtml::encode($data->KeySkills1); ?>
	<br />
	<b><?php echo CHtml::encode($data->getAttributeLabel('KeySkills2')); ?>:</b>
	<?php echo CHtml::encode($data->KeySkills2); ?>
	<br />
	*/ ?>
</div>
 
nah… sekarang setelah ane pake GridView, ProfIDnya tidak bisa diklik(ngelink) karena ambil data mentah langsung dr database, tidak ada modificate sedikitpun, gmn caranya ya biar ane bisa update…?
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            petra  
            (Petra Barus)
           
           
          
              
                April 21, 2011,  6:37am
               
               
          7 
           
         
        
          tambahin CButtonColumn aja,
$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'columns'=>array(
        'ProfID',
        'UserID',
        'Dari',
        'Smp',
        'JenisTrack',
        'InstitusiID',
        'Institusi',
        'PosisiPeran',
        array(
            '   class'=>'CButtonColumn',
           ),
        )
    )
);
 
bisa juga ditambahin di columnya jadi
$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'columns'=>array(
        array(
            'name' => 'ProfId',
            'type' => 'raw',
            'value' => 'CHtml::link(CHtml::encode($data->ProfID), array(\'view\', \'id\'=>$data->ProfID))',
        )
        'ProfID',
        'UserID',
 
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            asep  
            (Asep Mylocal)
           
           
          
              
                April 24, 2011, 11:27pm
               
               
          8 
           
         
        
          setelah ane coba berhasil juga sih omm
tapi saya inginnya, misal login dgn username: TONO,
maka tombol itu hanya akan muncul pada data yng diinputkan oleh TONO sedangkan pada data yang bukan diinputkan oleh TONO maka tombol itu tidak ada.
Jadi intinya dia hanya bisa CRUD sesuai user accountnya(UserID).
Saya pake koding ini ga bisa ya… harusnya conditionnya gmn ya?? bingung nih.
$myuser = Yii::app()->user->id;
$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'columns'=>array(
        'ProfID',
        'UserID',
        'Dari',
        'Smp',
        'JenisTrack',
        'InstitusiID',
        'Institusi',
        'PosisiPeran',
        'CatatanDanPrestasi',
		if(UserID==$myuser){
		array(
			'class'=>'CButtonColumn',
		),
		
		else{}
 
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            asep  
            (Asep Mylocal)
           
           
          
              
                April 25, 2011,  3:18am
               
               
          9 
           
         
        
          tolong yang udah tau, kasih solusinya donk…      
saya senang sekali jika ada yang bersudi membanru
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            junxiong  
            (Junxiong)
           
           
          
              
                April 25, 2011,  7:16am
               
               
          10 
           
         
        
          
setelah ane coba berhasil juga sih omm
tapi saya inginnya, misal login dgn username: TONO,
maka tombol itu hanya akan muncul pada data yng diinputkan oleh TONO sedangkan pada data yang bukan diinputkan oleh TONO maka tombol itu tidak ada.
Jadi intinya dia hanya bisa CRUD sesuai user accountnya(UserID).
Saya pake koding ini ga bisa ya… harusnya conditionnya gmn ya?? bingung nih.
$myuser = Yii::app()->user->id;
$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'columns'=>array(
        'ProfID',
        'UserID',
        'Dari',
        'Smp',
        'JenisTrack',
        'InstitusiID',
        'Institusi',
        'PosisiPeran',
        'CatatanDanPrestasi',
		if(UserID==$myuser){
		array(
			'class'=>'CButtonColumn',
		),
		
		else{}
 
 
 
menurut saya seperti ini:
$kolom = array(
        'ProfID',
        'UserID',
        'Dari',
        'Smp',
        'JenisTrack',
        'InstitusiID',
        'Institusi',
        'PosisiPeran',
        'CatatanDanPrestasi');
		if(UserID==$myuser){
		$kolom[] = array(
			'class'=>'CButtonColumn',
		);
$myuser = Yii::app()->user->id;
$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'columns'=>$kolom,
);
 
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            petra  
            (Petra Barus)
           
           
          
              
                April 25, 2011,  7:40am
               
               
          11 
           
         
        
          kayaknya mending,
$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'columns'=>array(
        'ProfID',
        'UserID',
        'Dari',
        'Smp',
        'JenisTrack',
        'InstitusiID',
        'Institusi',
        'PosisiPeran',
        'CatatanDanPrestasi',
         array(
            'class'=>'CButtonColumn',
            'visible' => '$data->UserID == Yii::app()->user->id;',
         ),
 
atau kalo restriksinya cuman buat button delete sama update (yg viewnya boleh dilihat oleh user lain)
$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'columns'=>array(
        'ProfID',
        'UserID',
        'Dari',
        'Smp',
        'JenisTrack',
        'InstitusiID',
        'Institusi',
        'PosisiPeran',
        'CatatanDanPrestasi',
         array(
            'class'=>'CButtonColumn',
            'buttons'  => array(
                'delete' => array(
                   'visible' => '$data->UserID == Yii::app()->user->id;',
                 ),
                'update' => array(
                   'visible' => '$data->UserID == Yii::app()->user->id;',
                 ),
             )
         ),
 
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            junxiong  
            (Junxiong)
           
           
          
              
                April 25, 2011, 11:48am
               
               
          12 
           
         
        
          Iya, solusi om Petra lebih bagus menurut saya~
lebih rapi~
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            asep  
            (Asep Mylocal)
           
           
          
              
                May 1, 2011, 12:33pm
               
               
          13 
           
         
        
          koding dari om petra
'visible' => '$data->UserID == Yii::app()->user->id;',
 
maaf
$data
 
itu variabel apa ya?  
apakah yg dimaksud
$dataProvider
 
bukan…?
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            aqge  
            (Programmer Riau)
           
           
          
              
                May 2, 2011,  2:55am
               
               
          14 
           
         
        
          
iya benul…
komponent item dari dataprovider itu di sebut nya $data, kayaknya setting otomatsnya yii…
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            petra  
            (Petra Barus)
           
           
          
              
                May 2, 2011,  5:12am
               
               
          15 
           
         
        
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            asep  
            (Asep Mylocal)
           
           
          
              
                May 2, 2011,  6:05am
               
               
          16 
           
         
        
          @ petra, junxiong & aqge: berhasil juga, Thanks jawaban dan informasinya dari masta-masta semua.
Semoga tidak bosan dengan pertanyaan2 dari ane.
         
         
        
            
            
            
         
         
             
             
          
       
      
        
        
          Mantab…ini yang saya cari-cari dari kemarin. Thanks banget.