$ sqlite3 test.db
####
plugins:
Database:
driver: SQLite
database: 'test.db'
####
#!/usr/bin/env perl
use strict; use warnings;
use FindBin;
use lib "$FindBin::Bin/../lib";
use TestApp;
TestApp->to_app;
####
package TestApp;
use Dancer2;
use Dancer2::Plugin::Database;
hook 'database_error' => sub {
my $err = shift;
warn "\nThe DB error: `$err`";
};
get '/' => sub {
eval { database->quick_insert('no_such_table', { foo => 'bar' }) };
'Hello, world';
};
1;
####
HTTP::Server::PSGI: Accepting connections at http://0:5000/
[TestApp:4783] core @2018-09-23 09:52:38> looking for get / in /home/nick/perl5/perlbrew/perls/perl-5.28.0/lib/site_perl/5.28.0/Dancer2/Core/App.pm l. 36
[TestApp:4783] core @2018-09-23 09:52:38> Entering hook core.app.before_request in (eval 305) l. 1
[TestApp:4783] debug @2018-09-23 09:52:38> Adding sqlite_unicode to DBI connection params to enable UTF-8 support in /home/nick/perl5/perlbrew/perls/perl-5.28.0/lib/site_perl/5.28.0/Dancer2/Plugin.pm l. 543
[TestApp:4783] core @2018-09-23 09:52:38> Entering hook plugin.database.database_connected in (eval 305) l. 1
[TestApp:4783] core @2018-09-23 09:52:38> Entering hook plugin.database.database_error in (eval 305) l. 1
The DB error: `DBD::SQLite::db do failed: no such table: no_such_table` at /home/nick/dev/TestApp/bin/../lib/TestApp.pm line 11.
DBD::SQLite::db do failed: no such table: no_such_table at /home/nick/perl5/perlbrew/perls/perl-5.28.0/lib/site_perl/5.28.0/Dancer/Plugin/Database/Core/Handle.pm line 310.
...