Tworząc widok oczekiwalibyśmy, alby system udostępniał nam często używane obiekty. Nie inaczej jest w Amelii. Obiektowi Smarty nie trzeba przekazywać za pomocą metody assign() obiektów konfiguracji oraz komunikatów. Są one dostępne pod nazwami odpowiednio: $conf praz $msgs. Dostępne są wszystkie pola i metody tych obiektów. Więcej na temat ich użycia w sekcjach dotyczących klas \core\Config oraz \core\Messages.

 

Kolejnymi elementami, które Amelia daje w widokach to tagi {url} oraz {rel_url}. Są one odpowiednikami metod URL() oraz relURL() klasy \core\Utils.

Przykłady użycia w widoku przy generowaniu linków do akcji - bezwzględnych/względnych - bez oraz z parametrami:

<a href="{url action='hello'}"> link </a>
<a href="{rel_url action='hello'}"> link </a>
<a href="{url action='hello' param1='value1' param2='value2'}"> link </a>
<a href="{rel_url action='hello' param1='value1' param2='value2'}"> link </a>

 

Warto wspomnieć, że Amelia pozawala samemu definiować swoje tagi Smarty oraz wstawiać swoje obiekty/zmienne dostępne automatycznie za każdym razem po pobraniu silnika za pomocą App::getSmarty(). Więcej na ten temat w opisie skryptów onload_smarty.php i onloaddb_php.

 

Użycie klas Amelii

Generalnie w widokach dostępne są wszystkie klasy Amelii. Można przykładowo sprawdzić rolę używając w widoku klasy RoleUtils:

{if \core\RoleUtils::inRole("admin")}
    //jakiś HTML ...
{/if}

Przydatne mogą być również metody generujące URL z klasy Utils:

<a href="{\core\Utils::URL_noclean('nazwa_akcji',['parametr' => 4])}"> jakiś link </a>