perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gunther Birznieks <>
Subject Re: comparison of templating methods?
Date Sun, 10 Jun 2001 14:28:02 GMT
At 08:25 PM 6/8/2001 +0200, Gerald Richter wrote:

> > At 02:26 PM 6/7/2001 +1000, Steve Smith wrote:
> > > > HTML::Embperl
> > >
> > >For me, this has one major win over the other toolkits: auto form
> > >population from a hash.  The online mortgage application system I
> > >wrote has about 1,800 form fields, which have to be populated with
> > >data from a database.  By making the form fields match DB column
> > >names, I can reduce the code to do this to:
> > >
> > >    my $data = $dbh->fetchrow_hashref($query);
> > >    %fdat = (%fdat, %$data);
> > >
> > >Embperl then parses the form and populates it with the matching
> > >name=>value pairs in %fdat, including select options.  Beautiful!
> >
> > Not that it's a reality now, but this is one of the things that the Perl
> > Widget Library project on source forge is hoping to accomplish for
> > languages. It's a cross template way of organizing form information and
> > it to db fields.
> >
> > The reality is that there are many fields that cannot map easily 1-1 to a
> > database as you say. eg a date in a database is usually a date field. But
> > in a form, it might be a combination of 3 form fields (dropdown for month,
> > year and day separately).
> >
>Such things could be solved by using DBIx::Recordset for database access and
>define some filters, which are able to transform the content of a field
>to/from format you need it.

Well, that assumes everything is a database... "everything I think I see, 
looks like a database to me..."

If you look at PHP's GPC model and then realize that it goes farther into 
allowing other datasources such as S or a DB or a secondary DB if the first 
one is empty for that field, then you'll see that abstracting it in a 
common way rather than a DBI-specific view is much more powerful and is 
something that applications do occasionally have to do.

Writing a filter is doable but really kind of a hack really.

View raw message