Cakephp-controllers
CakePHP-コントローラー
名前が示すように、コントローラーがアプリケーションを制御します。 モデルとビューの間の橋のように機能します。 コントローラーは要求データを処理し、正しいモデルが呼び出され、正しい応答またはビューがレンダリングされるようにします。 コントローラのクラスのメソッドは*アクション*と呼ばれます。 各コントローラーは命名規則に従います。 コントローラークラス名は複数形、キャメルケース、コントローラー- PostsController で終わります。
AppController
コントローラの動作
コントローラクラスのメソッドは、アクションと呼ばれます。 アクションは、リクエストを行うブラウザ/ユーザーに適切な応答を送信する責任があります。 ビューは、アクションの名前、つまりコントローラーのメソッドの名前によってレンダリングされます。
例
上記の例でわかるように、 RecipesController には3つのアクション(* View、Share、、 *Search )があります。
リダイレクト
ユーザーを同じコントローラーの別のアクションにリダイレクトするには、setAction()メソッドを使用できます。 以下は、setAction()メソッドの構文です-
構文
次のコードは、ユーザーを同じコントローラーのインデックスアクションにリダイレクトします。
次の例は、上記の方法の使用法を示しています。
例
次のプログラムに示すように、 config/routes.php ファイルに変更を加えます。
src/Controller/RedirectsController.phpに RedirectsController.php ファイルを作成します。 次のコードをコントローラーファイルにコピーします。
次のURLにアクセスして、上記の例を実行します。
出力
実行すると、次の出力が表示されます。
次に、次のURLにアクセスします- http://localhost:85/CakePHP/redirect-controller2
上記のURLは、次の出力を提供します。
モデルの読み込み
CakePHPでは、* loadModel()*メソッドを使用してモデルをロードできます。 以下は、loadModel()メソッドの構文です。
構文
上記の関数には2つの引数があります-
- 最初の引数はモデルクラスの名前です。
- 2番目の引数は、ロードするリポジトリのタイプです。
例
コントローラーにArticlesモデルをロードする場合、コントローラーのアクションに次の行を記述することでロードできます。