Spot on, Dan.
changing the code to
$self->session(calling_page => $self->req->url);
and
$self->stash(user => $username);
$self->redirect_to($self->session('calling_page')) if
$self->session('calling_page');
$self->render(template => 'tutorial/welcome', format => 'html');
works the way I wanted.
Many thanks,
Boyd
On Wednesday, 22 November 2017 17:33:38 UTC, Dan Book wrote:
>
> "flash" puts the data into the session, not the parameters. If it's in the
> same request just use the stash to pass the data, if it's in a different
> request then you need to retrieve it from the session -
> https://metacpan.org/pod/Mojolicious::Controller#session . Be careful
> using flash since it is by nature transient, and can act strangely if the
> user has multiple instances of the site open, for instance.
>
> -Dan
>
> On Wed, Nov 22, 2017 at 12:18 PM, <[email protected] <javascript:>>
> wrote:
>
>> Hi there,
>>
>> There's something that I don't understand about the rendering process.
>> I've got a method in the Controller that checks credentials from a login
>> form, with this fragment at the end of a successful authentication
>>
>> $self->stash(user => $username);
>> $self->render(template => 'tutorial/welcome', format => 'html');
>>
>> when I want to redirect back to the page originally requested that
>> required a login, I store the url in the flash with
>> $self->flash(calling_page => $self->req->url);
>> in the method that checks if the user has logged in and then squeezed in
>> a redirect_to call before the render
>>
>> $self->stash(user => $username);
>> $self->redirect_to($self->param('calling_page')) if
>> $self->param('calling_page');
>> $self->render(template => 'tutorial/welcome', format => 'html');
>>
>> Control seems to still fall through to the 'tutorial/welcome' template.
>> Why? Is there an obvious reason why this doesn't work? Or is it
>> programmer error in how I'm saving the calling page (is putting it in a
>> cookie better)?
>>
>> many thanks,
>> Boyd
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Mojolicious" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected] <javascript:>.
>> To post to this group, send email to [email protected]
>> <javascript:>.
>> Visit this group at https://groups.google.com/group/mojolicious.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
--
You received this message because you are subscribed to the Google Groups
"Mojolicious" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/mojolicious.
For more options, visit https://groups.google.com/d/optout.