首頁 >後端開發 >php教程 >PHP開發框架Yii Framework教學(31) Zii元件-DetailView範例

PHP開發框架Yii Framework教學(31) Zii元件-DetailView範例

黄舟
黄舟原創
2017-01-22 09:43:441461瀏覽

CDetailView為某個Model顯示詳細內容。這個要顯示的Model可以是CModel或關聯數組。

CDetailView透過設定 attributes來決定Model的那些屬性需要顯示已經以何種格式顯示。

每個屬性可以使用Name:Type:Label來設定。其中 Type和Label都是可選的。

「Name」 屬性名稱.

「Label」 可以選,屬性的標籤名,如果沒有配置,則使用屬性名稱做為標籤名稱.

「Type」屬性的類型,透過類型來決定顯示的格式formatter.可以使用的類型有raw, text, ntext, html, date, time, datetime, boolean, number, email, image, url. 等,缺省使用text.

本例修改上例Yii Framework 開發教程( 30) Zii元件-ListView 範例,修改顯示清單的清單項目模版_view.php ,使客戶名稱由普通文字變成Link。

FirstName . ' ' . $data->LastName,
$this->createUrl('view',array('CustomerId'=>$data->CustomerId)));?>

當點擊客戶名稱時,前往連結view.php, 傳入參數CustomerId設為Customer 的ID。
建立View.php,使用CDetailView元件。

widget('zii.widgets.CDetailView', array(
'data'=>$model,
'attributes'=>array(
'FirstName',
'LastName',
'Company',
'Address',
'City',
'State',
'Country',
'PostalCode',
'Phone',
'Fax',
'Email',
array(
'name'=>'Employee',
'value'=>$model->employee->FirstName,
),
),
));
?>

使用缺省的格式顯示Customer的每個字段,主要的Employee字段,表Customer定義的是SupportRepId做為外鍵參考Employee,因此修改類Customer定義Relations,參考Yii Framework 開發教程(27) 數據庫-關聯Active Record範例

public function relations()
{
return array(
'employee'=>array(self::BELONGS_TO,
'Employee', 'SupportRepId'),
);
}

顯示結果如下:

PHP開發框架Yii Framework教學(31) Zii元件-DetailView範例


以上就是PHP開發框架Yii Frameworkwwwwww(31) Zii元件-DetailView範例的內容,更多相關內容請關注PHP網路(中文組件-DetailView範例. php.cn)!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn