En komponent är inte detsamma som en modell. Så om du vill göra saker på det här sättet måste du ändra din Action
modellera till en komponent.
Komponenten skulle gå in i Controller/Component/ActionComponent.php
, och sedan kan den inkluderas i dina Controllers så här:
public $components = array(..., 'Action');
Logiken i din komponent kan likna den i en modell, men det finns vissa skillnader. Till exempel kan du fortfarande ha en Action-modell, och komponenten kan använda den för CRUD och andra saker. Du måste använda ClassRegistry::init()
för att ladda en modell i din komponent dock.
Jag kan inte riktigt förklara hur man gör exakt vad du vill, en anledning till det är att jag inte vet exakt tillräckligt vad det är du vill. Däremot har jag skrivit min egen komponent tidigare och du kan använda den för referens om du vill - det är möjligen mer komplicerat än ditt så du kan se hur du skriver metoder för det.
I det exemplet, när det väl är inkluderat i en Controller, kan jag helt enkelt anropa $this->CustomAcl->check()
var som helst jag vill.
Jag hoppas att detta är tillräckligt för att du åtminstone ska komma igång.