Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MVC] przekazywanie parametrów akcji, jak to zrobić?
drbane
post 18.03.2007, 10:19:38
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 9.10.2006

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


Witam,
Mam taki mały problem, jak zrobić przekazywanie parametrów akcji w kontrolerze?
Mam cos takiego (przyklad):
  1. <?php
  2. $this->NextAction('saveData','id'=>'1');
  3. ?>


Powiedzmy że mam listę akcji do wykonania i co teraz? Jak przekazać parametry, żeby akcja "wiedziała" o nich i je wykonała?
Nie wiem, czy pytanie jest dobrze sformułowane, jeżeli nie - poprawię.

Dla Was może to nie problem, ale dla mnie...tak:)


--------------------
only Google!
Go to the top of the page
+Quote Post
splatch
post 18.03.2007, 11:57:48
Post #2





Grupa: Zarejestrowani
Postów: 487
Pomógł: 7
Dołączył: 7.01.2004
Skąd: Warszawa

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


W Agavi każda akcja i widok dostaje kontener zawierający dane z różnych miejsc (GET/POST/FILES etc), do których dobierasz się metodą setParameter.

W chwili gdy robisz forward możesz dorzucić własny parametr przez setParameter.

  1. <?php
  2. class Cart_AddAction extends AgaviAction {
  3.  
  4. public function execute(AgaviParameterHolder $parameters) {
  5. $cart = $this->getContext()->getUser()->getCart();
  6. try {
  7. // helper wykorzystuje parametry i kontekst do wyszukiwania obiektów
  8. $helper = new PropelHelper($this->getContext(), $parameters);
  9. $product = $helper->read('Products');
  10. $cart->add($product);
  11. } catch (PropelException $e) {
  12. // w razie problemów dorzucamy wyjątek, który będzie dostępny dla widoku
  13. $parameters->setParameter('exception', $e);
  14. return 'Error';
  15. }
  16.  
  17. $parameters->setParameter('message', 'Produkt '. $product->getProductName() .' został dodany do koszyka');
  18. return array('Cart', 'IndexSuccess', $parameters);
  19. }
  20.  
  21.  
  22. public function getDefaultViewName() {
  23. return 'Foo';
  24. }
  25.  
  26. }
  27.  
  28. ?>


--------------------
Łukasz Dywicki
Independent Java and open source software consultant.
Blog - Java, OSGi, integracja oprogramowania..
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: 19.03.2024 - 05:21