I would do it this way:
$session{User} = {
id => 100,
username => 'tim',
};
display_id_and_username($session{User});
John
-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of fixed
Sent: Tuesday, June 13, 2006 6:51 AM
To: [email protected]
Subject: Re: [Mason] Mason Design Advice
Thank you for the reply.
I come from a Java background and what you wrote makes sense. However, am
I right in saying that you are creating a User object and storing this in
$session? Therefore, Mason will always have access to:
$session{User}->get_id or other methods for this object?
In many Perl examples I have seen, I have never seen them put objects in
the session, but things like:
$session{id} = 100;
$session{username} = tim;
display_id_and_username($session{id}, $session{username});
But I would prefer:
display_id_and_username($session{User}->{id},$session{User}->get_name);
or even better:
display_id_and_username(\$session);
Is it good practise in Perl to put the object in the session and go from
there?
Thank you
Ogden
On Mon, 12 Jun 2006, Mark Hedges wrote:
>
>
> On Mon, 12 Jun 2006, Ogden wrote:
> >
> > MyApp::do_something($session{User}.get_id());
>
> Are you a python or java programmer? ( . = concat, -> = deref )
> package MyApp;
> use Perl6::Export::Attrs;
> sub do_something :Export( :DEFAULT ) {
> do_stuff();
> }
>
> # in mason...
>
> use MyApp;
> do_something( $session{User}->get_id() );
>
> There are 10,000 ways to do it in Perl. 80% of them are wrong.
> Your way doesn't sound half bad.
>
> You could, for example, write your own PerlAuthen/AuthzHandler
> that processes before Mason, and either redirects to the login
> if not authenticated or sets the user object into $r->pnotes...
> The the autohandler puts it into your session. Or a pre-process
> handler creates the session.
>
> Whatever works.
>
> Mark
>
_______________________________________________
Mason-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mason-users
_______________________________________________
Mason-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mason-users