/MojoExample

Mojolicious example with DBIx::Class schema load, deploy, fixtures, and tests.

Primary LanguageJavaScript

Purpose

Notes

  • Both apps make use of the DBIx::Class schema.
  • The schema is in lib/Schema.pm, lib/Schema/*
  • The DBIx::Class schema connects to a provided sqlite3 database, test.db
  • The controller tests create a new test.db, populated using fixtures from t/fixtures/*
  • The schema tests use an in-memory sqlite3 database, populated using fixtures from t/fixtures/*
  • Test::Database is a utility for populating the sqlite3 databases with fixtures from t/fixtures/*

Usage

Live

Running on Heroku

Heroku is running Hypnotoad, the full featured UNIX optimized preforking non-blocking I/O HTTP 1.1 and WebSocket server built around the very well tested and reliable Mojo::Server::Daemon with IPv6, TLS, Bonjour, libev and hot deployment support that just works.

To easily deploy your own Mojolicious app to Heroku, check out Deploy Perl Mojolicious web apps to Heroku.

Locally

To run the full app: morbo script/mojo_full

To run the lite app: morbo mojolite

(Both the Full and Lite apps are identical in functionality)

Requirements for running locally

Easy, one-step installation of modules:

curl -L cpanmin.us | perl - Mojolicious Modern::Perl DBIx::Class DateTime DateTime::Format::SQLite \
                            Time::Duration File::Slurp SQL::Translator

A minimum of Perl 5.10 is required. If your Perl is too old, Perlbrew is über easy to install!

If you must run on Perl 5.8, you can try a back-ported version of Mojolicious, but you're on your own :)

Index