ホームページ  >  記事  >  バックエンド開発  >  Cakephpのコントローラ変数

Cakephpのコントローラ変数

黄舟
黄舟オリジナル
2016-12-20 09:31:511073ブラウズ

コントローラー変数

コントローラーで少数の変数を操作すると、Cake の追加機能を最大限に活用できます:

$name

PHP4 は現在のクラス名をキャメルケース形式で提供しません。問題がある場合は、この変数を使用してクラス名を正しいキャメルケース形式に設定できます。

$uses

あなたのコントローラーは複数のモデルを使用していますか? FragglesController は $this->Fraggle を自動的にロードしますが、$this->Smurf にもアクセスしたい場合は、以下をコントローラーに追加してみてください:

var $uses = array('Fraggle','Smurf');

$use 配列の使い方に注意してください Fraggle モデルが含まれています、以前は自動的に利用可能でしたが。

$helpers

この変数を使用すると、コントローラーがヘルパーをビューにロードできるようになります。 HTML ヘルパーは自動的にロードされますが、この変数を使用して他のヘルパーを指定することもできます:

var $helpers = array('Html','Ajax','Javascript');

HTML ヘルパーを使用する場合は、$helpers 配列に HtmlHelper を含める必要があることに注意してください。通常、これはデフォルトで使用可能ですが、これを使用せずに $helpers を定義すると、ビューにエラー メッセージが表示されます。

$layout

この変数をコントローラーで使用するレイアウト名に設定します。

$autoRender

この変数を false に設定すると、アクションのレンダリングが自動的に停止されます。

$beforeFilter

アクションの呼び出しごとに (およびアクションの実行前に) コードを少し実行したい場合は、$beforeFilter を使用します。これはアクセス制御に非常に適しています。ユーザーのアクセス許可は、アクションを呼び出す前にチェックできます。アクションが発生します。この変数をコントローラーのアクションを含む配列に設定します。次のように実行できます:

class ProductsController extends AppController
{
    var $beforeFilter = array('checkAccess');
 
    function checkAccess()
    {
        //Logic to check user identity and access would go here....
    }
 
    function index()
    {
        //When this action is called, checkAccess() is called first.
    }
}

$components

$helpers および $uses と同じです。この変数は、必要なコンポーネントをロードするために使用されます:

var $components = array(&#39;acl&#39;);<!--[if !supportFootnotes]-->[2]<!--[endif]-->

上記は、cakephp のコントローラー変数の内容です。さらに関連する内容については、PHP 中国語 Web サイト (www.php.cn) に注目してください。


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