Опция 'unset'

Опция unset позволяет указать колонку, которая не будет отображаться на стороне клиента.

Такая колонка будет выбираться из базы данных. По ней будет возможен поиск и сортировка. Но, в отличие от опции hidden, для клиента она как будто не существует. Колонка будет убрана из colModel при рендеринге, и её значения не будут передаваться.

Это полезно, если вам нужные данные из БД для неких расчетов, но на стороне клиента они не используются.

Для таких колонок можно не указывать label, width и прочие параметры, имеющие смысл только для клиентской части.

Пример unset:

$this->query = "SELECT {fields} FROM tbl_order o, tbl_customer c WHERE c.id=o.customer_id AND {where}";
 
$this->cols = array(
	"id"          => array("label"  => "ID",
                               "db"     => "o.id",
			       ...
			       ),
 
	"first_name"  => array("label"  => "First name", 
			       "db"     => "c.first_name",
                               "unset"  => true, //not exist for client
			       ...
				),
 
	"last_name"   => array("label"  => "Last name",
                               "db"     => "c.last_name",
                               "unset"  => true, //not exist for client
			       ...
				),
 
	"full_name"   => array("label"  => "Full name",
                               "manual" => true,
			       ...
				),
);
 
.......
 
protected function parseRow($r)
{
    $r['full_name'] = $r['first_name'] . ' ' . $r['last_name']; //full_name assigned manually in PHP
    return $r;
}

На других языках