Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ZendFramework] przekazywanie z pluginu do widokow
JarCzeS
post 11.07.2008, 15:31:03
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 5.05.2008

Ostrzeżenie: (0%)
-----


jak przekazac jakies dane z pluginu do widoku?
mam taki plugin ktory pobiera mi menu i chcialbym przekezac otrzymana tablice do widoku

Kod
class SiteMenu extends Zend_Controller_Plugin_Abstract
{
    public function preDispatch(Zend_Controller_Request_Abstract $request)
    {
        $structure = new Structure();
        $menu = $structure->fetchAll('1=1');
        $this->view->menu = $menu;
    }
}
Go to the top of the page
+Quote Post
batman
post 11.07.2008, 18:08:37
Post #2





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Jest na to kilka sposobów. Najprostszy to przekazanie zmiennej w pluginie do rejestru, a w widoku jej odczytanie.


--------------------
I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features.
Go to the top of the page
+Quote Post
Sabistik
post 12.07.2008, 08:45:33
Post #3


Administrator wortalu


Grupa: Przyjaciele php.pl
Postów: 960
Pomógł: 39
Dołączył: 21.10.2003
Skąd: Kraków

Ostrzeżenie: (0%)
-----


A najlepszy - przekazanie w request'cie jako parametr.
Go to the top of the page
+Quote Post
Martio
post 14.07.2008, 11:15:07
Post #4





Grupa: Zablokowani
Postów: 167
Pomógł: 2
Dołączył: 15.02.2004

Ostrzeżenie: (30%)
XX---


Zarejestruj sobie w bootstrapie czy pluginie inicjalizującym aplikację - w zależności gdzie inicjalizujesz podstawowe obiekty jak Zend_View - obiekt widoku w rejestrze:

  1. <?php
  2. Zend_Registry::set('Zend_View', $view)
  3. ?>


i potem w pluginie pobierz jego instancję:

  1. <?php
  2. $view = Zend_Registry::get('Zend_View');
  3. ?>


Drugi sposób - jak używasz domyślnie aktywnego helpera View Renderer"

  1. <?php
  2. $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer');
  3. $view = $viewRenderer->getView();
  4. ?>
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 27.04.2024 - 11:35