Mysql
 sql >> Baza danych >  >> RDS >> Mysql

cakephp wykorzystujący komponenty jako metody kontrolera

Komponent to nie to samo co model. Więc jeśli chcesz robić rzeczy w ten sposób, musisz włączyć Action modelu do komponentu.

Komponent przejdzie do Controller/Component/ActionComponent.php , a następnie można go dołączyć do kontrolerów w następujący sposób:

public $components = array(..., 'Action');

Logika w Twoim komponencie może być podobna do logiki w modelu, ale istnieją pewne różnice. Na przykład nadal możesz mieć model Action, a komponent może go używać do CRUD i innych rzeczy. Będziesz musiał użyć ClassRegistry::init() aby załadować model do twojego komponentu.

Naprawdę nie potrafię wyjaśnić, jak zrobić dokładnie to, czego chcesz, jednym z powodów jest to, że nie wiem wystarczająco dokładnie, czego chcesz. Jednak napisałem wcześniej własny komponent i możesz go używać do odniesienie, jeśli chcesz - prawdopodobnie jest bardziej skomplikowane niż twoje, więc możesz zobaczyć, jak napisać dla niego metody.

Niestandardowy składnik ACL

W tym przykładzie, gdy jest już dołączony do kontrolera, mogę po prostu wywołać $this->CustomAcl->check() gdziekolwiek lubię.

Mam nadzieję, że to wystarczy, aby przynajmniej zacząć.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql wybierz z pętlą while

  2. Dane wyjściowe Pythona zastępują znaki spoza ASCII znakami �

  3. Jak kosztowne są JOIN w SQL? I/lub jaki jest kompromis między wydajnością a normalizacją?

  4. Jak przechowywać dane zawierające cytaty w MySQL?

  5. jak usunąć zduplikowane wiersze z tabeli w mysql