]> git.decadent.org.uk Git - maypole.git/blobdiff - lib/BeerDB.pm
Update manifest for release and anonymize the example some.
[maypole.git] / lib / BeerDB.pm
index c69e2dc9be87a381e290a286aac575639808df07..23bd39f335c7c7f15d48f5f7f95fe4acff35ef1f 100644 (file)
@@ -1,13 +1,26 @@
-# vim:ft=perl
 package BeerDB;
-use Apache::MVC;
 use base 'Apache::MVC';
-sub handler { Apache::MVC::handler("BeerDB", @_) }
-BeerDB->set_database("dbi:SQLite:dbname=/opt/beer/beerdb.db");
-BeerDB->config->{template_root} = "/opt/beer";
-BeerDB::Brewery->columns(Stringify => qw/name/);
+use Class::DBI::Loader::Relationship;
+# This line is required if you don't have Apache calling Perl handlers
+# as methods.
+sub handler { Apache::MVC::handler(__PACKAGE__, @_) }
 
-BeerDB->config->{loader}->relationship( "a brewery produces beers" );
-BeerDB->config->{loader}->relationship( "a pub has beers on handpumps");
+# This is the sample application. Change this to the path to your
+# database. (or use mysql or something)
+BeerDB->set_database("dbi:SQLite:t/beerdb.db");
+# Change this to the root of the web space.
+BeerDB->config->{uri_base} = "http://localhost/beerdb/";
 
+# Handpumps should not show up.
+BeerDB->config->{display_tables} = [qw[beer brewery pub style]];
+BeerDB::Brewery->untaint_columns( printable => [qw/name notes url/] );
+BeerDB::Beer->untaint_columns(
+    printable => [qw/abv name price notes/],
+    integer => [qw/style brewery/],
+    date =>[ qw/date/],
+);
+BeerDB->config->{loader}->relationship($_) for (
+    "a brewery produces beers",
+    "a style defines beers",
+    "a pub has beers on handpumps");
 1;