NAME

DbFramework::Template - Fill template with database values

SYNOPSIS

use DbFramework::Template;
$t = new DbFramework::Template($template,\@tables);
print $t->fill;
$t->default($table);
$t->template->set_text($template);

DESCRIPTION

DbFramework::Template is a class for filling templates with values from a database.

Template placeholders

The following list describes the placeholders allowed in a template. In each case %values relates to the hash passed to the fill() method.

(:&db_value(table.column):)

Replaced with the value from %values whose key is table.column. See "table_qualified_attribute_hashref()" in DbFramework::Persistent for a useful method for generating a hash to fill this type of placeholder.

(:&db_html_form_field(table.column[ value=value][ type=type]):)

Replaced with an HTML form field appropriate for the column column in the table table. value is the inital value which will be applied to the field. The type of field generated is determined by the data type of column. This can be overridden by setting type. See "as_html_form_field()" in DbFramework::Attribute for more details.

(:&db_fk_html_form_field(table.fk):)

Replaced with an HTML form field appropriate for the foreign key fk in the table table. See "as_html_form_field()" in DbFramework::ForeignKey for more details.

SUPERCLASSES

DbFramework::Util

CLASS METHODS

new($template,\@tables)

Create a new DbFramework::Template object. $template is the template to be filled. @tables are the DbFramework::Table objects required for filling the template.

OBJECT METHODS

template()

Returns the Text::FillIn object associated with the template.

fill(\%values)

Returns a filled template. The values in %values are used to fill certain placeholders in the template (see "Template placeholders".)

default($table)

$table is a DbFramework::Table object. Sets up a default template consisting of all fields in $table.

SEE ALSO

Text::FillIn and DbFramework::Util.

AUTHOR

Paul Sharpe <paul@miraclefish.com>

COPYRIGHT

Copyright (c) 1999 Paul Sharpe. England. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.