[html-formfu] Re: Date field and rendering a hidden field

Zbigniew Lukasiak zzbbyy at gmail.com
Fri Feb 15 17:12:50 GMT 2008


And here is some debugging I've done:

DB<3> s
HTML::FormFu::Element::Hidden::string(/usr/local/share/perl/5.8.8/HTML/FormFu/Element/Hidden.pm:17):
17:         my ( $self, $args ) = @_;

DB<3> n
HTML::FormFu::Element::Hidden::string(/usr/local/share/perl/5.8.8/HTML/FormFu/Element/Hidden.pm:19):
19:         $args ||= {};

DB<3> p join ', ', Class::C3::calculateMRO( ref $self );
HTML::FormFu::Element::Hidden, HTML::FormFu::Element::_Input,
HTML::FormFu::Element::_Field, HTML::FormFu::Element,
HTML::FormFu::base

DB<4>
HTML::FormFu::Element::Hidden::string(/usr/local/share/perl/5.8.8/HTML/FormFu/Element/Hidden.pm:21):
21:         my $render
22:             = exists $args->{render_data}
23:             ? $args->{render_data}
24:             : $self->render_data;

DB<4> s
HTML::FormFu::Element::render_data(/usr/local/share/perl/5.8.8/HTML/FormFu/Element.pm:124):
124:        return shift->render_data_non_recursive(@_);

Normally it should go to HTML::FormFu::Element::_Input::render_data
here - but it jumps to it's parent class.

I am rather lost here - looks like a C3 problem.

Cheers,
Zbigniew

On Fri, Feb 15, 2008 at 5:19 PM, Zbigniew Lukasiak <zzbbyy at gmail.com> wrote:
> This looks quite weird.  When I render my form the hidden field does
>  not get it's value.
>
>  Here is the code:
>
>  use strict;
>  use warnings;
>
>  use HTML::FormFu;
>
>  my $form = HTML::FormFu->new;
>  $form->load_config_file( 'e.yml' );
>  $form->process( { first_instance_date_year => 2008 } );
>  my $ind = $form->get_all_element( { name => 'event_indicator' } );
>  $ind->default( 1 );
>  warn $ind->value;
>  warn $ind->render;
>  warn $ind->value;
>
>  __OUTPUT__
>  1 at form.t line 11.
>  <input name="event_indicator" type="hidden" value="" /> at form.t line 12.
>  1 at form.t line 13.
>
>  So it looks that the hidden field does have the value - but it is not
>  printed out when rendering. And it happens only after processing the
>  Date element.
>
>  The config file I use:
>
>  ---
>  # render_method: tt
>  elements:
>   - label: first_instance_date
>     name: first_instance_date
>     type: Date
>     auto_inflate: 1
>   - name: event_indicator
>     type: Hidden
>     value : 1
>  id: Event
>
>  --
>  Zbigniew Lukasiak
>  http://brudnopis.blogspot.com/
>



-- 
Zbigniew Lukasiak
http://brudnopis.blogspot.com/



More information about the HTML-FormFu mailing list