Thread

Posted on Sun Feb 27 00:15:06 2005 by zby
problems with BeerDB
I'm just starting with Maypole (installed version 2.09) and I encountered following problems with the BeerDB example:
1) There is no
BeerDB->config->template_root("/usr/local/lib/site_perl/templates");
line in the example BeerDB installed in the ex directory.
2) The CGI version still gets
'<base href="http://localhost/beerdb/"/>'
line in the produced HTML iven when I added
BeerDB->config->uri_base("http://localhost/cgi-bin/search/beer.pl");

3) I get "Undefined subroutine &BeerDB::handler called.\n" when I run the example in mod_perl

I attache the BeerDB after my changes (mod_perl version)

=========================================================
package BeerDB; use Maypole::Application; use Class::DBI::Loader::Relationship; sub debug { $ENV{BEERDB_DEBUG} } # This is the sample application. Change this to the path to your # database. (or use mysql or something) use constant DBI_DRIVER => 'SQLite'; use constant DATASOURCE => '/usr/local/lib/site_perl/beerdb.db'; BEGIN { my $dbi_driver = DBI_DRIVER; if ($dbi_driver =~ /^SQLite/) { die sprintf "SQLite datasource '%s' not found, correct the path or " . "recreate the database by running Makefile.PL", DATASOURCE unless -e DATASOURCE; eval "require DBD::SQLite"; if ($@) { eval "require DBD::SQLite2" and $dbi_driver = 'SQLite2'; } } BeerDB->setup(join ':', "dbi", $dbi_driver, DATASOURCE); } # Give it a name. BeerDB->config->application_name('The Beer Database'); BeerDB->config->template_root("/usr/local/lib/site_perl/templates"); # Change this to the root of the web space. #BeerDB->config->uri_base("http://localhost/cgi-bin/search/beer.pl"); BeerDB->config->uri_base("http://localhost/beerdb/"); #BeerDB->config->uri_base("http://neo.trinity-house.org.uk/beerdb/"); BeerDB->config->rows_per_page(10); # Handpumps should not show up. BeerDB->config->display_tables([qw[beer brewery pub style]]); BeerDB::Brewery->untaint_columns( printable => [qw/name notes url/] ); BeerDB::Style->untaint_columns( printable => [qw/name notes/] ); BeerDB::Beer->untaint_columns( printable => [qw/abv name price notes url/], integer => [qw/style brewery score/], date =>[ qw/date/], ); BeerDB->config->{loader}->relationship($_) for ( "a brewery produces beers", "a style defines beers", "a pub has beers on handpumps"); # For testing classmetadata sub BeerDB::Beer::classdata :Exported {}; sub BeerDB::Beer::list_columns { return qw/score name price style brewery url/}; 1;
Direct Responses: 158 | Write a response
Posted on Sun Feb 27 11:35:34 2005 by zby in response to 156
Re: problems with BeerDB
I should not have posted it so fast.
ad. 2) The problem is a bit different - the base url is all right, but the links are leading to http://localhost/cgi-bin/search/brewery/list instead of http://localhost/cgi-bin/search/beer.pl/brewery/list
ad. 3) This was my mistake of course. Apache perl was not finding BeerDB in it's path.
Direct Responses: 922 | Write a response
Posted on Mon Aug 22 21:40:44 2005 by teejay in response to 158
Re: problems with BeerDB
Hi,
2.10 has been out for a month and has several corrections to the documentation and exampoles - are you still having problems, if so - join the mailing list and ask for help there.
cheers,
Aaron.
Write a response