If you want to switch run modes in mid-stream your current run mode just has to call the runmode that you want.
There is never any need for a normal CGI::Application based app to use redirect headers to access another runmode unless the resource has actually moved (e.g. has a new URL)
Here is larsen's example modified updated to remove the redirect.
--# Does nothing except printing the form. # Using sessions you can pass to it an error_message, # for example. # sub login + { my $self = shift; + my $tmpl = $self->load_tmpl( 'login' ); + return $tmpl->output(); + } sub login_update + { my $self = shift; + my $q = $self->query; # Fetch username and password from the form # if ( PASSWORD CORRECT ) { return $self->first_panel; } else { # It could store some useful info in a session, # for example the error message. # return $self->login; } # You have a problem if this return ever actually executed #return; }
In reply to Re: Re: Re: CGI::Application design strategy
by clscott
in thread CGI::Application design strategy
by BUU
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |