Hello Jurian > If you have more complex variables required in > your view script, you could write a view helper > for that. Your uri parameters is an excellent > example for that imho.
To solve the uri issue, I have come up with this ViewHelper: https://gist.github.com/2794307 Where it gets its Request via DI 'di' => array ( 'instance' => array ( 'My\View\Helper\Uri' => array ( 'parameters' => array ( 'request' => 'Zend\Http\PhpEnvironment\Request' ) ) ) ) I prefer this solution too. Thanks for your feedback. Jonathan Maron On Sat, May 26, 2012 at 10:37 AM, Jonathan Maron <[email protected]> wrote: > Hello Jurian > > Thank you very much for your comments. At the moment, I am still > playing with (read: learning) ZF2 for dummy projects. I hope that by > the time the first RC comes our, I can start think about using it for > client work. > >> In your approach you always need to use $this->view for >> returning a view object. > > I agree, this is a significant disadvantage. > >> For very simple parameter injection I'd go with the >> Module.php listener approach. > > I will code the same functionality using this approach. And then > compare them side-by-side. > >> If you have more complex variables required in >> your view script, you could write a view helper >> for that. Your uri parameters is an excellent >> example for that imho. > > I agree with you here too. > > There are many ways to skin a cat. At the moment, I trying to find > them, so I can make an informed decision about which one is most > suitable to my applications. > > Again, thanks for your feedback. > > Jonathan Maron > > > > > > On Sat, May 26, 2012 at 10:00 AM, Jurian Sluiman > <[email protected]> wrote: >> Hi Jonathan, >> >> 2012/5/26 Jonathan Maron <[email protected]> >>> >>> Hello Roman >>> >>> I have asked myself the same question: How can I pass basic, standard >>> variables to the View that should be available on every section of the >>> module. I your case, you just want the names of controller and action >>> in the View. I also want some more standard variables (locale, uri >>> etc). >>> >>> I have come up with a solution that involves a custom >>> \Zend\Mvc\Controller\ActionController that is then used by the >>> Controllers. >>> >>> Please take a look at this solution: >>> >>> https://gist.github.com/2792133 >>> >>> I am looking at your solution right now. >>> >>> What are the advantages of these two approaches? >>> >>> Jonathan Maron >> >> >> In your approach you always need to use $this->view for returning a view >> object. If you use another module from someone else, s/he probably isn't >> using your own action controller, so there you don't have those variables. >> >> For very simple parameter injection I'd go with the Module.php listener >> approach. It's independent from whatever you do with your controllers and >> thus much safer. Keep in mind this can go wrong for perhaps CLI requests or >> http requests which do not use the PhpRenderer but instead return a JSON >> response. >> >> If you have more complex variables required in your view script, you could >> write a view helper for that. Your uri parameters is an excellent example >> for that imho. >> -- >> Jurian Sluiman -- List: [email protected] Info: http://framework.zend.com/archives Unsubscribe: [email protected]
