=head1 NAME Catalyst::Manual::Tutorial::03_MoreCatalystBasics - Catalyst Tutorial - Chapter 3: More Catalyst Application Development Basics =head1 OVERVIEW This is B for the Catalyst tutorial. L =over 4 =item 1 L =item 2 L =item 3 B<03_More Catalyst Basics> =item 4 L =item 5 L =item 6 L =item 7 L =item 8 L =item 9 L =item 10 L =back =head1 DESCRIPTION This chapter of the tutorial builds on the work done in Chapter 2 to explore some features that are more typical of "real world" web applications. From this chapter of the tutorial onward, we will be building a simple book database application. Although the application will be too limited to be of use to anyone, it should provide a basic environment where we can explore a variety of features used in virtually all web applications. You can check out the source code for this example from the Catalyst Subversion repository as per the instructions in L. Please take a look at L before doing the rest of this tutorial. Although the tutorial should work correctly under most any recent version of Perl running on any operating system, the tutorial has been written using Debian 5 and tested to be sure it runs correctly in this environment. =head1 CREATE A NEW APPLICATION The remainder of the tutorial will build an application called C. First use the Catalyst C script to initialize the framework for the C application (make sure you aren't still inside the directory of the C application from the previous chapter of the tutorial or in a directory that already has a "MyApp" subdirectory): $ catalyst.pl MyApp created "MyApp" created "MyApp/script" created "MyApp/lib" created "MyApp/root" ... created "MyApp/script/myapp_create.pl" Change to application directory and Run "perl Makefile.PL" to make sure your install is complete $ cd MyApp This creates a similar skeletal structure to what we saw in Chapter 2 of the tutorial, except with C and C substituted for C and C. (As noted in Chapter 2, omit the ".pl" from the command if you are using Strawberry Perl.) =head1 EDIT THE LIST OF CATALYST PLUGINS One of the greatest benefits of Catalyst is that it has such a large library of plugins and base classes available. Plugins are used to seamlessly integrate existing Perl modules into the overall Catalyst framework. In general, they do this by adding additional methods to the C object (generally written as C<$c>) that Catalyst passes to every component throughout the framework. By default, Catalyst enables three plugins/flags: =over 4 =item * C<-Debug> Flag Enables the Catalyst debug output you saw when we started the C