[html-formfu] wrong err msg because of detach to another form

David Schmidt davewood at gmx.at
Wed Dec 2 08:42:28 GMT 2009


What did make a difference was calling or not calling $form->process.

If I display form #2 for the first time I do not call process, thus
not having formfu check the request parameters against the form.

have a nice day everyone

david


On Wed, Dec 2, 2009 at 9:18 AM, David Schmidt <davewood at gmx.at> wrote:
> On Tue, Dec 1, 2009 at 10:05 PM, Ashley Pond V <ashley.pond.v at gmail.com> wrote:
>> Untested but you can probably fix that by using ->go instead of
>> ->detach (If you've got a recent enough version of Catalyst).
>>
>> On Tue, Dec 1, 2009 at 12:52 PM, David Schmidt <davewood at gmx.at> wrote:
>>> Hello
>>>
>>> In my Cat App I show two forms to the User. The problem now is that
>>> when I submitted a valid form #1 my app detaches to form #2 where
>>> error messages are displayed according to the parameters of form #1
>>> which are still in the request.
>>>
>>> I've been looking in the CPAN docs but couldnt find anything related to that.
>>>
>>> sub show :Path('show') :Args(1) {
>>>    my ( $self, $c, $form_config) = @_;
>>>
>>>    # set the form
>>>    my $form = $self->form;
>>>    $form->load_config_file($form_config);
>>>    $form->process;
>>>
>>>    if ($form->submitted_and_valid &&
>>> (!(defined($c->stash->{dont_process_form})))) {
>>>        # make sure the same form isn't processed twice
>>>        # by using the dont_process_form var
>>>
>>>        ##########################
>>>        # do stuff with form data
>>>        # and manipulate session
>>>        ##########################
>>>
>>>        # otherwise deep recursion
>>>        $c->stash->{dont_process_form} = 1;
>>>        $c->detach($c->controller('Root')->action_for('index'));
>>>    } else {
>>>        $c->stash->{form} = $form;
>>>    }
>>> }
>>>
>>> In Root::index I dispatch to the required forms according to a
>>> session variable that indicates the state of the user.
>>>
>
> "go" doesnt make a difference on Cat 5.80013
>



-- 
David Schmidt   |   http://www.fm5.at



More information about the HTML-FormFu mailing list