ホームページ  >  記事  >  バックエンド開発  >  PHP 開発フレームワーク Yii Framework チュートリアル (31) Zii コンポーネント - DetailView の例

PHP 開発フレームワーク Yii Framework チュートリアル (31) Zii コンポーネント - DetailView の例

黄舟
黄舟オリジナル
2017-01-22 09:43:441356ブラウズ

CDetailView は、特定のモデルの詳細なコンテンツを表示します。表示されるモデルは CModel または連想配列です。

CDetailView は、属性を構成することによって、モデルのどの属性をどの形式で表示する必要があるかを決定します。

各属性は、Name:Type:Label を使用して設定できます。 Type と Label はどちらもオプションです。

"Name" 属性名。

"Label" オプション。属性のラベル名。設定されていない場合、属性名がラベル名として使用されます。

属性の "Type" タイプ。使用できるタイプは、raw、text、ntext、html、date、time、datetime、boolean、number、email、image、url などです。デフォルトは text です。

この例は次のとおりです。以前の Yii Framework 開発チュートリアル ( 30) Zii コンポーネント-ListView の例から変更して、表示リストのリスト項目テンプレート _view.php を変更して、顧客名が通常のテキストからリンクに変更されるようにします。

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

とき顧客の名前をクリックすると、リンク view.php に移動し、受信パラメータ CustomerId を顧客の 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 テーブルは外部キー参照 Employee として SupportRepId を定義するため、Customer クラス定義のリレーションを変更します。Yii Framework Development Tutorial (27) Database- を参照してください。関連するアクティブ レコードのサンプル

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

は、次のように結果を表示します:

PHP 開発フレームワーク Yii Framework チュートリアル (31) Zii コンポーネント - DetailView の例


上記は、PHP 開発フレームワーク Yii Framework チュートリアル (31) Zii コンポーネント-DetailView のサンプルの内容です。 PHP 中国語 Web サイト (www.php.cn) に注意してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。