09
lip
08

Integracja Kohany i OPT

Jak pisałem w poprzednim poście – pierwsze co należało zrobić z Kohaną to zintegrować ją z systemem szablonów OPT.

Poszło wszystko dość gładko, już przy pierwszym podejściu. Łatwo bo miałem już zintegrowane CI z OPT, w Kohanie było analogicznie. Więc krok po kroku:

  1. Stworzyć katalog application/libraries/opt i wgrać do niego pliki OPT
  2. Stworzyć plik Opt.php i umieścić w nim kod:

    defined(’SYSPATH’) or die(’No direct script access.’);
    define( ‘OPT_DIR’, ‘application/libraries/opt/’ );
    require_once( OPT_DIR . ‘opt.class.php’ );
    class OPT extends optClass
    {
    public function __construct()
    {
    $this -> root = ‘application/views/’;
    $this -> compile = ‘application/views_c/’;
    $this -> cache = ‘application/cache/’;
    $this -> plugins = OPT_DIR . ‘plugins/’;
    $this -> charset = ‘UTF-8′;
    $this -> httpHeaders( OPT_HTML );
    }
    };

  3. Stworzyć katalog application/views_c i nadać mu chmod 0777
  4. Można w application/config/config.php dodać autoładowanie biblioteki:

    $config['preload'] = array
    (
    ‘libraries’ => ‘Opt’,
    ‘models’ => ”,
    );

Teraz w kodzie kontrolera można umieścić przykładowy kod:

//$this->Opt = new Opt(); // jeśli nie ma autoładowania biblioteki Opt
$this->Opt->assign( ‘title’, ‘My welcome to Kohana!’ );
$this->Opt->parse( ‘welcome.tpl’ );

Oczywiście szablon welcome.tpl musi istnieć i mieć zmienną $title, aby można było zobaczyć efekt. I to tyle, można się cieszyć tandemem Kohana + OPT


9 Odpowiedzi do “Integracja Kohany i OPT”


  1. lipiec 9, 2008 o 2:08 am

    U siebie już o tym pisałem dwa miesiące temu :)

  2. 2 n
    lipiec 9, 2008 o 1:53 pm

    preload jest wycofany, nie używać.

  3. lipiec 9, 2008 o 6:57 pm

    @Nowaker: no już dostałem linka w komentarzu do poprzedniego wpisu, ale nieraz lubię sobie pogrzebać zanim poszukam gotowca ;)

    @n: szczerze mówiąc nie zauważyłem tego nigdzie takiej informacji, możesz podać linka?

    pzdr.

  4. lipiec 14, 2008 o 1:50 am

    Też nie słyszałem o wycofaniu preloada (a często jestem na Kohanowym TRAC’u). Aczkolwiek nie widzę zbytnio potrzeby umieszczania Opt w preloadzie, ja mam to w tzw. MY_Controller.

  5. wrzesień 26, 2008 o 10:41 am

    No u mnie niestety to nie dziala,nie wiem co jest grane…ale wywala ciagle:
    “Fatal error: Class ‘Opt’ not found ….gorowicz_com\application\controllers\welcome.php on line 16″

    hmm a tak wyglada u mnie linijka 16:
    $this->Opt = new Opt();

    Nie wiem co jest grane…,zaczynam sie zniechecac do kohany …

  6. wrzesień 26, 2008 o 9:53 pm

    A próbowałeś z autoloaderem? W dobrym miejscu umieściłeś plik Opt.php?

  7. wrzesień 29, 2008 o 9:30 am

    Witam serdecznie,ponownie…taki blad wywalalo mi gdy probowalem zaladowac OPT bez preload’a.

    Jesli uzyje preloada,dostaje taki komunikat:

    “Undefined property: Welcome_Controller::$Opt”

    Czyli na moj nos,wyglada na to ze Opt nie jest zaladowane.

    Moze to wina ciaglych z mian w kohanie,nie wiem :]

  8. wrzesień 29, 2008 o 2:07 pm

    Podaj ścieżkę do pliku Opt.php, sprawdź czy nazwa pliku/klasy zaczyna się wielką literą.

  9. maj 26, 2009 o 3:50 pm

    Definicja klasy wygląda: class OPT
    Utworzenie obiektu: new Opt

    Widzisz błąd? Ja widzę – autoloader Kohany jest case-sensitive. Na Linuksie to nie zadziała.


Napisz odpowiedź




 

lipiec 2008
P W Ś C P S N
« cze   sie »
 123456
78910111213
14151617181920
21222324252627
28293031  

a

Strony