![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 7 Dołączył: 9.10.2007 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Witam ponownie
![]() Kolejna nie przespana noc i kolejny problem ![]() Chciałbym prosić o opis jak można zaczać korzystać z helpera. Powiedzmy że klasy Helperów umieszczam w katalogu: /application/assistant/helpers/ Do załadowania helperów użyłem:
Kod helpera:
teraz w IndexController.php chciałbym użyć tego helpera (metody my_test()) i niewiem jak, w ogóle niewiem czy dobrze skonfigurowałem Zenda do tego by używac helperów. MOże macie koledzy jakieś strony z artukułami lub może ktoś sam będzie w stanie poprowadzić za raczkę ? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 444 Pomógł: 79 Dołączył: 26.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
po pierwsze warto symulowac namespace w nazwie klasy - dzieki temu mozesz zrobic cos takiego
i dodac caly namespace a nie tylko pojedyncze helpery - szczegoly tutaj poza tym warto zadbac o to zeby helper mial zaimplementowana metode direct() - dzieki temu bedziesz mogl sie do niego odwolac tak
o czym wiecej tutaj -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 7 Dołączył: 9.10.2007 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Niestety kod:
Nie chce działać :/ Nie odnajduje mi helpera mojego. Działa dopiero z:
Czy po prostu podaje złą ścieżke ![]() Helper mam w /application/assistant/helpers/My.php # Include path
Jak daje
To nie widzi tego pliku chociaż że w set_include_path dodałem ściezkę do helperów. Klasa Helpera
Czy podaję złą ścieżke ? Przepraszam że tak się dopytuje, ale każdy kiedyś zaczynał Ten post edytował Sajrox 24.08.2009, 13:31:17 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 444 Pomógł: 79 Dołączył: 26.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
nie bardzo chce mi sie rozgryzac twoje podejscie (tez niedawno zaczynalem z zendem;) )
ale czy nie porsciej w include_path trzymac tylko sciezke do liba, w libie obok folderu Zend stworzyc wlasny w ktorym bedziesz trzymal wlasne klasy np lib/ /Zend /Seth /Helpers /MyHelper.php /Validators /etc... a nastepnie gdzies w kodzie (np w bootstrapie)
MyHelper.php
i w controllerach
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 7 Dołączył: 9.10.2007 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Faktycznie działa
![]() Opisze dla potomnych. Może komuś się przyda. Lokalizacja helperów: | /library | /MyApp | /Helpers | MyHelper.php MyHelper.php
W Initializer.php (coś jak Bootstrap.php, po kolei ładuje różne części aplikacji), można to wstawić w Bootstrapie.php
IndexController.php
Include path: (index.php)
Ten post edytował Sajrox 24.08.2009, 14:34:36 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 444 Pomógł: 79 Dołączył: 26.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
mniejwiecej ale direct() na ogol lepiej wykozystywac jako metode niz zamiennik getInstance()
-------------------- |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 7 Dołączył: 9.10.2007 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
NO własnie nie mog e rozgryźc jak uzyć tego directa poprawnie. próbuje sprawdzać inne klasy Helperów w Zendzie ale za dużlo to nie mówi.
Może jakiś przykład jak Ty to rozwiązałeś ? |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 444 Pomógł: 79 Dołączył: 26.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
tak, ewentualnie jesli helper ma wiele metod to warto wzorowac sie np na Zend_Controller_Action_Helper_ViewRenderer
jesli to nadal zamalo to podaj konkretniejszy przyklad -------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 14:55 |