Heim  >  Artikel  >  Backend-Entwicklung  >  Controller-Variable in Cakephp

Controller-Variable in Cakephp

黄舟
黄舟Original
2016-12-20 09:31:511091Durchsuche

Controller-Variablen

Durch die Manipulation einer kleinen Anzahl von Variablen im Controller können Sie die Nutzung der zusätzlichen Funktionen von Cake maximieren:

$name

PHP4 verwendet das nicht aktueller Kamelfall Der Klassenname des Formats wird uns gegeben. Wenn Sie Probleme haben, können Sie diese Variable verwenden, um den Klassennamen im richtigen CamelCase-Format festzulegen.

$uses

Verwendet Ihr Controller mehrere Modelle? FragglesController lädt automatisch $this->Fraggle, aber wenn Sie auch auf $this->Smurf zugreifen möchten, versuchen Sie, Folgendes zu Ihrem Controller hinzuzufügen:

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

Bitte beachten Sie, dass Sie wissen, wie Sie das einbinden Fraggle-Modell im $use-Array, obwohl es zuvor automatisch verfügbar war.

$helpers

Mit dieser Variablen kann der Controller Helfer in seine Ansicht laden. Der HTML-Helfer wird automatisch geladen, aber Sie können andere mit dieser Variablen angeben:

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

Denken Sie daran, dass Sie HtmlHelper in das $helpers-Array aufnehmen müssen, wenn Sie ihn verwenden möchten. Normalerweise ist es standardmäßig verfügbar, aber wenn Sie $helpers ohne es definieren, werden in Ihren Ansichten Fehlermeldungen angezeigt.

$layout

Setzen Sie diese Variable auf den Layoutnamen, den Sie im Controller verwenden möchten.

$autoRender

Setzen Sie diese Variable auf „false“, wodurch das Rendern der Aktion automatisch gestoppt wird.

$beforeFilter

Wenn Sie möchten, dass bei jedem Aktionsaufruf (und vor der Ausführung von Aktionen) ein kleiner Teil Ihres Codes ausgeführt wird, verwenden Sie $beforeFilter. Das ist wirklich großartig Schön – Sie können die Berechtigungen des Benutzers überprüfen, bevor eine Aktion ausgeführt wird. Legen Sie diese Variable auf ein Array fest, das Controller-Aktionen enthält. Kann wie folgt ausgeführt werden:

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

Das Gleiche wie $helpers und $uses. Diese Variable wird zum Laden der von Ihnen benötigten Komponenten verwendet:

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

Das Obige ist der Inhalt der Controller-Variablen in cakephp. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php. cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn