ホームページ >PHPフレームワーク >YII >Yii ビューでウィジェットを使用する 3 つの方法
Yii ビューでウィジェットを使用する 3 つの方法を以下にまとめます。
1. 詳細情報の表示:
2. 条件付き制限とページングが可能なリストの表示:
Controller:
ビュー:
# サブビュー: getAttributeLabel('id')); ?>:// $ data は親ビューからデータを受け取り、getAttributeLabel() を使用してモデルに設定されたラベルを取得します id), array('view', 'id'=>$data->id)); ?> / / $data->attribute を使用して値を取得します。
一般的にR/U/D操作ではloadModel($modelId)を使用しますが、この時、読み込み、更新、削除の際にモデルのid値を取得しているためです。 GET. ID に対応するモデルをロードするだけです。
ただし、C (create) では、loadModel を実行する必要はありませんが、新しい初期化されたモデルを作成する必要があります。
モデルの属性に $_POST['Model'] の値をそれぞれ入力した後、save() を実行できます。
Yii の異なるコントローラーは同じテンプレートを使用します:
Yii の CRUD 操作では、C と U は同じサブビューを使用します。違いは次のとおりです。
操作 C では、すべての入力値は空であり、新しく作成されたモデルも初期化された状態にあり、POST から値を受け取る準備ができています。
U 操作では、すべての入力値をloadModel($id) を通じて入力し、POST から更新された値を受け取る準備をする必要があります (一部の
値は、 user);
次に、 $model->isNewRecord() に基づいて、送信ボタンに C 操作と U 操作のどちらが表示されるかを決定します。
最後に $model->save(); を使用してレコードを保存します。
Yii でビューをレンダリングする方法:
$this->render() と $this->renderPartial() を使用してビューをレンダリングします;
前者は通常、ビュー全体をレンダリングします。後者は、繰り返しレンダリングする必要がある部分をレンダリングするために使用できます。
たとえば、レコードの一覧は通常、indexAction で表示されますが、すべてのレコードが同じように描画されるため、サブ
ビューは同じ部分をそれぞれ描画するために使用されます。インデックス ビューは、ナビゲーションのパンくずリスト、レコード数、
ページングなどの大きな結果のみをレンダリングします。
http://zhouyujiao163.blog.163.com/blog/static/48363054201161464156603/
関連する推奨事項:以上がYii ビューでウィジェットを使用する 3 つの方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。