yii框架控制器有什么用

yii框架控制器有什么用

控制器是 MVC 模式中的一部分, 是繼承yiibaseController類的對象,負責處理請求和生成響應。

具體來說,控制器從應用主體 接管控制后會分析請求數據并傳送到模型, 傳送模型結果到視圖,最后生成輸出響應信息。

動作? ? ? ? ? ? ? ? ? (推薦學習:yii框架

控制器由 操作 組成,它是執行終端用戶請求的最基礎的單元, 一個控制器可有一個或多個操作。

如下示例顯示包含兩個動作view and create 的控制器post:

Namespace?appcontrollers;  use?Yii; use?appmodelsPost; use?yiiwebController; use?yiiwebNotFoundHttpException;  class?PostController?extends?Controller { ????public?function?actionView($id) ????{ ????????$model?=?Post::findOne($id); ????????if?($model?===?null)?{ ????????????throw?new?NotFoundHttpException; ????????}  ????????return?$this->render('view',?[ ????????????'model'?=>?$model, ????????]); ????}  ????public?function?actionCreate() ????{ ????????$model?=?new?Post;  ????????if?($model->load(Yii::$app->request->post())?&&?$model->save())?{ ????????????return?$this->redirect(['view',?'id'?=>?$model->id]); ????????}?else?{ ????????????return?$this->render('create',?[ ????????????????'model'?=>?$model, ????????????]); ????????} ????} }

在操作?view?(定義為?actionView()?方法)中, 代碼首先根據請求模型ID加載?模型, 如果加載成功,會渲染名稱為view的視圖并顯示,否則會拋出一個異常。

在操作?create?(定義為?actionCreate()?方法)中, 代碼相似. 先將請求數據填入模型, 然后保存模型,如果兩者都成功,會跳轉到ID為新創建的模型的view操作, 否則顯示提供用戶輸入的create視圖。

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享