in reply to mason request scope variable
Hi jeteve,
I use Mason for almost everything I write to web. The way I usually do this is by passing the session variable as parameter to the $m->call_next(session=>$session);
However, I don't use <%init>, <%once>, <%cleanup> or <%filter> (I used <%filter> once). The main reason I don't use them is that the code turn into a less predictable code.
For instance, in this code:
For situations identical to yours, my code usually looks like (in the autohandler):
I use Mason for almost everything I write to web. The way I usually do this is by passing the session variable as parameter to the $m->call_next(session=>$session);
However, I don't use <%init>, <%once>, <%cleanup> or <%filter> (I used <%filter> once). The main reason I don't use them is that the code turn into a less predictable code.
For instance, in this code:
Can anyone say which of the blocks will be called first? I don't, and don't want to be always looking for the next (or previous) code block, so I just use (most of the time) the <%perl> and <%args>. You can do everything you need using just this too, and your code is a lot more linear.<%cleanup> print "Cleanup"; </%cleanup> <%init> print "Init"; #This is an alias to $m->out(); </%init> <%filter> print "Filter"; </%filter> <%perl> print "Perl"; </%perl> <%once> print "Once"; </%once>
For situations identical to yours, my code usually looks like (in the autohandler):
Hope this helps you.<%perl> my $session=$m->comp('/mason/session/session.mas'); $m->call_next(session=>$session); $m->comp('/mason/session/session.mas', action=>'save', session=>$sessi +on); </%perl>
In Section
Seekers of Perl Wisdom