Membuat Fungsi Cari Data di tabel Relasi PHP YII CGridView

Halo, kali ini saya akan berbagi pengalaman dan cara untuk membuat fungsi pencarian data di tabel lain yang berelasi, lalu di tampilkan di CGridView YII, adapun kasus ril nya, kita akan mencari data pengawas dari tabel pengawas di tabel Main.

Keterangan gambar yang dilingkari adalah tabel Pengawas.

langsung saja ke kodingnya, masuk ke Model yii. lalu masukan koding ini :

public $pengawas11;


tambah koding di rules()
pengawas11', 'safe', 'on'=>'search'),

lalu masukan di relation(),
'pengawas1' => array(self::BELONGS_TO, 'Pengawas', 'pengawas1'),

masukan koding public function search()

$criteria->with = array( 'pengawas1' );
$criteria->compare('pengawas1.nama', $this->pengawas11, true );

lalu tambahkan di bagian bawah rules()

return new CActiveDataProvider($this, array(
        'criteria'=>$criteria,
'sort'=>array(
    'attributes'=>array(
        'pengawas11'=>array(
            'asc'=>'pengawas1.nama',
            'desc'=>'pengawas1.nama DESC',
        ),
        '*',
    ),
),
    ));
pengawas1 adalah nama relasi nya, jika selesai, lalu masuk ke view admin, dan tambahkan koding ini;
array( 
      'name'=>'pengawas11',
      'header'=>'Pengawas', 
      'value'=>'$data->pengawas1()->nama' 
     ),
maka hasilnya akan sesuai dengan gambar pertama tadi, semoga bermanfaat, terimakasih.
jangan lupa untuk membaca tutorial yang lainnya disini :

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Scroll to Top