Yep, that sequence of events is exactly what I am seeing. Hooray, I am not crazy! (well, on this one thing...)

One way I was thinking of getting around this was to do the same thing you suggested with the template vars for the $controller->_formbuilder data - create named aliases (at step 1 and 1a below) so that the CGI::FB object can be grabbed even if clobbered by the forward. I will try this out while you are checking in to things yourself (I haven't done it yet because it doesn't look clean to implement, and I thought I was doing something really wrong).

What I guess we would end up with is an FB::Multiple module that:

1) Still provide the normal ways of getting at form data, so that your actions with no forwards still work like normal (ex: [% FormBuilder.render %] and $self->formbuilder)

2) Provide an alternate way of getting at form stuff, so that you can get data even if you are using forwards (ex: [% forms.foo.FormBuilder.render %] and $self->forms{foo} or $self->forms_foo - still haven't decided on a naming scheme)

Will send you my test app in a moment.

Thanks again!

Danny

Juan Camacho wrote:
Doubt it has anything to do with your environment. I thought I had
tested it a while back when helping someone else, but maybe something
was overlooked since I never got a final word back from the guy I was
helping.  I think I have an idea of what might be wrong -- it has to
do with the following sequence of events:

Action foo
========
1) setup new FormBuilder before action
2) Run foo action which then $c->forwards to foo_search
   Action foo_search
  ==============
  1a) setup new FormBuilder before action
  1b) run foo_search action
  1c) setup_template_vars for foo_search after action
3) setup_template_vars for foo after action

Problem in #3 is that $self->_formbuilder is clobbered from the inner
forward action.

I will try to look into this today and get back to you, but it may not
be until quite late tonight and I won't be able to spend too much time
on it until this weekend.  In the mean time, send *me* directly a
zip/gz of a minimal MyApp catalyst application (including forms and tt
files) so I can quickly get going on it.

Hopefully others will chime in to provide other ideas and
clarification of the action sequence.

_______________________________________________
List: [email protected]
Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/[email protected]/
Dev site: http://dev.catalyst.perl.org/

Reply via email to