Difference between revisions of "Website:Application overview"
|Line 42:||Line 42:|
== Views ==
== Views ==
Revision as of 13:22, 16 January 2008
- 1 Directory Structure
- 2 Configuration
- 3 Application structure
- 4 Widgets
- 5 Creating new Models and Controllers
Catalyst offers a powerful configuration system. We use it to provide application-wide, per-page, and per-session configuration. In addition, local configuration files can be used to override any configuration option for production or development deployment.
Here, $ROOT refers to the document root of your application.
This file contains the default configuration for the application. The application defaults to using remote data sources. If you would like to override this, see wormbase_local.yml.
Move this template file to wormbase_local.yml and edit values to locally override the default configuration variables. This file is maintainted in SVN as a template so that individual development preferences are not obliterated by an inadvertent svn commit.
The general structure of the application mirrors the organization in Acedb. Separate Model::* packages correspond to classes in Acedb.
Generic Model methods
Generic Controller Actions
Widgets are distinct presentation elements of a given model. Widgets correspond to sections in the previous WormBase site. For example, the Gene page has widgets for Identification, Location, and so on.
Required Controller actions
Required Model methods
Creating new Models and Controllers
1. Create your new Model or Controller using the wormbase_create.pl script. This script provides stub formatting, documentation, and test files.
$ROOT/scripts/wormbase_create.pl model Test
[todd@micos trunk:23]$ ./script/wormbase_create.pl model Test exists "/Users/todd/projects/wormbase/website/trunk/script/../lib/WormBase/Model" exists "/Users/todd/projects/wormbase/website/trunk/script/../t" created "/Users/todd/projects/wormbase/website/trunk/script/../lib/WormBase/Model/Test.pm" created "/Users/todd/projects/wormbase/website/trunk/script/../t/model_Test.t"