NAME
HTML::DataTable::DBI - Print HTML tables from SQL queries
VERSION
Version 0.54
SYNOPSIS
use HTML::DataTable::DBI;
my $list = HTML::DataTable::DBI->new(
data => $cgi_data,
columns => [
# hashrefs describing column formats
],
sql => 'SELECT * FROM table_name WHERE foreign_key = ?',
sql_params => [ $some_value ],
delete => { } # Delete spec as shown below
);
print $list;
METHODS
Look in HTML::DataTable for column-definition and table formatting attributes
ADDITIONAL ATTRIBUTES
dsn
A list containing a DBI connect string, username, and password.
dbh
You can supply a live DBI database handle instead of a DSN.
sql
A SQL query with optional "?" placeholders, which will be run and its results formatted and shown in the table.
sql_params
An optional arrayref containing the actual parameters for the SQL query.
delete
An optional hashref telling the list what record to delete. If this is included, a column will be added to the table to show trash icons. The hashref can take either of two forms. If the SQL query for this table is not parameterized - that is, the record's ID is all we need to know which record to delete - then the hashref can simply map the column index of the record ID to the CGI argument that supplies the one to delete:
delete => {
sql => 'DELETE FROM table WHERE record_id = ?',
id => [ 0 => $args{delete} ],
}
whereas if the query had a parameter the delete hashref has to give both the local and foreign keys:
delete => {
sql => 'DELETE FROM table WHERE record_id = ? AND foreign_id = ?',
local => [ record_id => $args{speaker_id} ],
foreign => [ 0 => $args{delete} ],
}
An optional "noun" attribute in that hashref can supply a word to replace "record" in the delete confirmation alert.
trash_icon
The URL of a trash can icon for use in the "Delete" column - defaults to /art/trash.gif.
ADDITIONAL COLUMN ATTRIBUTES
sql
A paramterized SQL query that will be run to get results for this column.
foreign_key_col
The index of the column in the results from the main table's SQL query that will be used in the column's query's parameter. Defaults to 0.
separator
A character string that will be used to concatenate the results of the columns's query. Defaults to ", ".
SEE ALSO
HTML::DataTable
AUTHORS
Nic Wolff <nic@angel.net> Jason Barden <jason@angel.net>