Zend_Controller-ActionHelpers-FlashMessenger.xml 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <sect3 id="zend.controller.actionhelpers.flashmessenger">
  2. <title>FlashMessenger</title>
  3. <sect4 id="zend.controller.actionhelper.flashmessenger.introduction">
  4. <title>Úvod</title>
  5. <para>
  6. Pomocná trieda <code>FlashMessenger</code> umožnuje odovzdanie správ
  7. ktoré možno potrebuje vidieť užívateľ pri ďalšom požiadavku. Pri
  8. realizácii tejto požiadavky <code>FlashMessenger</code> používa
  9. <code>Zend_Session_Namespace</code> na uloženie správ pre budúcu, alebo
  10. nasledujúcu požiadavku. Vo všeobecnosti je dobré ak sa použije
  11. <code>Zend_Session</code> alebo <code>Zend_Session_Namespace</code>,
  12. ktoré sa inicializuje pomocou <code>Zend_Session::start()</code>
  13. (pre viac detailov o používaní pozri
  14. <link linkend="zend.session.startingasession">Zend Session</link>)
  15. </para>
  16. </sect4>
  17. <sect4 id="zend.controller.actionhelper.flashmessenger.basicusage">
  18. <title>Základné použitie</title>
  19. <para>
  20. Nasledujúci príklad ukazuje jednoduché použitie <code>FlashMessenger</code>.
  21. Ak zavolá akcia <code>/some/my</code>, tak sa uloží správa &quot;Uložené!&quot;.
  22. Nasledujúca požiadavka na akciu <code>/some/my-next-request</code>
  23. získa túto správu (a tak ju zmaže).
  24. </para>
  25. <programlisting role="php"><![CDATA[<?php
  26. class SomeController extends Zend_Controller_Action
  27. {
  28. /**
  29. * FlashMessenger
  30. *
  31. * @var Zend_Controller_Action_Helper_FlashMessenger
  32. */
  33. protected $_flashMessenger = null;
  34. public function init()
  35. {
  36. $this->_flashMessenger = $this->_helper->getHelper('FlashMessenger');
  37. $this->initView();
  38. }
  39. public function myAction()
  40. {
  41. /**
  42. * default method of getting Zend_Controller_Action_Helper_FlashMessenger
  43. * instance on-demand
  44. */
  45. $this->_flashMessenger->addMessage('Uložené!');
  46. }
  47. public function myNextRequestAction()
  48. {
  49. $this->view->messages = $this->_flashMessenger->getMessages();
  50. $this->render();
  51. }
  52. }
  53. ]]></programlisting>
  54. </sect4>
  55. </sect3>