Controller

Kontroler odpowiada za odbieranie danych od użytkownika, decydowanie o tym, co zrobić z tymi danymi, a następnie delegowanie zadań do odpowiednich modeli lub wyświetlanie odpowiednich widoków.

Namespace

Klasa:

Nimblephp\framework\Controller

Abstract:

Nimblephp\framework\Abstracts\AbstractController

Zmienne

  • public string $name: Nazwa załadowanego kontrolera.
  • public string $action: Nazwa wywołanej akcji.
  • public array $models: Lista załadowanych modeli.
  • public ResponseInterface $response: Instancja Response
  • public RequestInterface $request: Instancja Request

Metody

loadModel

public function loadModel(string $name): AbstractModel
Argumenty
string $name: Nazwa modelu

Metoda loadModel służy do ładowania modelu na podstawie podanej nazwy.

Po załadowaniu modelu znajduje się on w tablicy $models oraz jest możliwość do odwołanai się do niego za pomocą zmiennej z CamelCase np.:

$this->loadModel('testowy_model');
// odwołanie do modelu
$this->TestowyModel->...

log

public function log(string $message, string $level = 'INFO', array $content = []): bool
Argumenty
string $message: Treść loga
string $level = 'INFO': Poziom loga
array $content = []: Dodatkowe dane loga

Dodanie loga

afterConstruct

public function afterConstruct(): void

Metoda jest inicjowania po utworzeniu i skonfigurowaniu kontrolera w metodze loadController w Kernel

PHPDoc

Wyłączenie wejścia do metody z poziomu klienta

/**
 *  @action disabled
 */

Pozwalają one na wyłączenie akcji dla kontrolera, co oznacza, że nie można wywołać tej akcji z poziomu przeglądarki.

Wejście tylko z requestów AJAX

/**
 * @actionType ajax
 */

Zawartość zostanie zwrócona tylko gdy zaptanie przyjdzie z poziomu AJAX, walidowane jest to metodą isAjax z klasy Request