![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 37 Pomógł: 0 Dołączył: 30.07.2006 Skąd: okolice Elbląga Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich!
Otoż mój problem polega na tym, że w pliku app_controller.php chcę utworzyć funkcję, która będzie wykorzystawana w różnych miejscach strony. Wygląda ona następująco:
Chodzi tutaj głównie o linijkę, z zapytaniem do bazy danych: $ret = $this->User... Otóż to zapytanie działa tylko wtedy gdy korzystam z modelu User, a gdy np. chce tą funkcję wykorzystać, np. w modelu Koty to otrzymuję taki błąd: Kod Notice: Undefined property: AppController::$User in /... Fatal error: Call to a member function query() on a non-object in /... Nie mam pojęcia jak to zrobić aby to działało we wszystkich modelach. Proszę o pomoc!! --- Pozdrawiam Kacperix Ten post edytował kacperix 3.09.2006, 11:41:34 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 0 Dołączył: 19.12.2006 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Temat co prawda dość stary, ale jako, że sam zaczynam dopiero z cakePHP, to wiem, że często można właśnie ucząc się znaleźć przydatne informacje w dość starych postach. W związku z tym piszę tą odpowiedź.
Podane wyżej przez innych rozwiązania wydają mi się niezgodne z zamysłem autorów frameworka. Moim zdaniem, jeśli chcesz w innych kontrolerach wykorzystywać kod ściśle związany z Configiem, powinieneć w klasie ConfigController wstawić odpowiednią funkcję, np:
a następnie wywoływać ją w innych kontrolerach za pomocą funkcji requestAction(), na przykład:
Celowo nie zmieniałem w pierwszym bloku kodu funkcji, żeby wszystko było jasne, ale myślę, że funkcja powinna bardziej wykorzystywać elementy cakePHP, jak poniżej:
Ten post edytował wojtek.zielinski 12.12.2007, 00:06:04 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 05:01 |