[Catalyst] Question about workflow to handle multiple 'submit'
buttons on one form
Francisco Obispo
fobispo at isc.org
Mon Feb 7 19:42:37 GMT 2011
Well, what I would do, is keep the underlying 'save' and 'close' methods as private:
sub save : Private {
my ($self,$c)=@_;
# your save code goes here
}
sub close : Private {
my ($self,$c)=@_;
# your close code goes here
}
That way you could have:
sub action : Local {
my ($self,$c)=@_;
$c->forward('save');
$c->forward('close') if $c->request->param("close"); # or something
}
Francisco
On Feb 7, 2011, at 11:29 AM, Len Jaffe wrote:
>
>
> On Mon, Feb 7, 2011 at 11:41 AM, will trillich <will.trillich at serensoft.com> wrote:
> Catalystry:
>
> So there's a second page where they fill out some finalization options (with the original data in hidden fields) and there they have a final "submit" button for the purpose. And they should be able to use their browser's "back" button to get back to the edit form.
>
>
> The problem we're wrestling with is that the "edit" action should have a URL distinct from the close action so that the user can hit the "back" button if need be.
>
> /item/# <= view item
> /item/#/edit <= edit form
> /item/#/close <= confirm-close form
>
>
> Nah. I wouldn't have two URLs. I'd have one URL, and determine whether to save or save+close based on the value of the submit button.
> Furthernore, after a successful submit (assuming http POST) I'd redirect the user to a new display page via GET so that they can hit the refresh button all the like without attempting to repost the submission.
>
> Len.
>
> --
> lenjaffe at jaffesystems.com 614-404-4214
> Asst. Scoutmaster Troop 156 - www.bsatroop156.org - webmaster at bsatroop156.org
> Proprietor: http://www.theycomewithcheese.com/ - An Homage to Fromage
> _______________________________________________
> List: Catalyst at lists.scsys.co.uk
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> Dev site: http://dev.catalyst.perl.org/
Francisco Obispo
Hosted@ Programme Manager
email: fobispo at isc.org
Phone: +1 650 423 1374 || INOC-DBA *3557* NOC
Key fingerprint = 532F 84EB 06B4 3806 D5FA 09C6 463E 614E B38D B1BE
More information about the Catalyst
mailing list