X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Manual.git;a=blobdiff_plain;f=lib%2FCatalyst%2FManual%2FTutorial%2FIntro.pod;h=fdce808bf73a20d6b676054b8a16515af8cbcb00;hp=b556adc800c12e66c5e49b0f94e3428f1c246900;hb=cf582e91b80f0002a576fd6c01cb571311cb609f;hpb=3533daff0314522f79dff9c618da087568f1378c diff --git a/lib/Catalyst/Manual/Tutorial/Intro.pod b/lib/Catalyst/Manual/Tutorial/Intro.pod index b556adc..fdce808 100644 --- a/lib/Catalyst/Manual/Tutorial/Intro.pod +++ b/lib/Catalyst/Manual/Tutorial/Intro.pod @@ -5,7 +5,7 @@ Catalyst::Manual::Tutorial::Intro - Catalyst Tutorial - Part 1: Introduction =head1 OVERVIEW -This is B for the Catalyst tutorial. +This is B for the Catalyst tutorial. L @@ -56,7 +56,7 @@ L =head1 DESCRIPTION -This tutorial provides a multipart introduction to the Catalyst web +This tutorial provides a multi-part introduction to the Catalyst web framework. It seeks to provide a rapid overview of many of its most commonly used features. The focus is on the real-world best practices required in the construction of nearly all Catalyst applications. @@ -70,11 +70,10 @@ management). You can obtain the code for all the tutorial examples from the catalyst subversion repository by issuing the command: - svn co http://dev.catalyst.perl.org/repos/Catalyst/tags/examples/Tutorial/MyApp/5.7/ CatalystTutorial + svn co http://dev.catalyst.perl.org/repos/Catalyst/trunk/examples/Tutorial/ CatalystTutorial -This will download the current code for each tutorial chapter in the -CatalystTutorial directory. Each example application directory has -the same name as the tutorial chapter. +This will download the most recent tarball for each part of the +tutorial into the CatalystTutorial directory on your machine. B -B It should make little or no difference to Catalyst's -operation, but this tutorial has been written using Ubuntu 8.04 +operation, B because that represents a quick and easy for most people to try out -Catalyst with virtually zero setup time and hassles. See the Catalyst -installation section below for more information. +Catalyst with virtually zero setup time and hassles. Also, the tutorial +has been tested to work correctly with the versions of Catalyst and all +the supporting modules in Ubuntu 8.10 (see "VERSIONS AND CONVENTIONS +USED IN THIS TUTORIAL" below for the specific versions for some of the +key modules), so B (for example, a module changed its behavior in a +newer version or a bug was introduced), B. See the "CATALYST INSTALLATION" section below for +more information. If you're reading this manual online, you can download the example program and all the necessary dependencies to your local machine by @@ -130,14 +136,12 @@ Attempts to provide an example showing current (5.7XXX) Catalyst practices. For example, the use of L, DBIC, L -with C, the use of C +with C, the use of C vs. C, etc. =item * -The use of Template Toolkit (TT) and the -L -view helper. +The use of Template Toolkit (TT). =item * @@ -173,10 +177,6 @@ applications can be found in the C area of the Catalyst Subversion repository at L. -B There are a variety of other introductory materials available -through the Catalyst web site and at -L and -L. =head1 VERSIONS AND CONVENTIONS USED IN THIS TUTORIAL @@ -188,19 +188,19 @@ versions: =item * -Ubuntu 8.04 Hardy Heron +Ubuntu 8.10 (Intrepid Ibex) =item * -Catalyst v5.7011 +Catalyst v5.7014 =item * -Catalyst::Devel v1.03 +Catalyst::Devel v1.07 =item * -DBIx::Class v0.08008 +DBIx::Class v0.08010 =item * @@ -215,11 +215,7 @@ use. This tutorial has been tested against the following set of plugins: =item * -Catalyst::Plugin::Authentication -- v0.10002 - -=item * - -Catalyst::Plugin::Authentication::Store::DBIC -- v0.09 +Catalyst::Plugin::Authentication -- v0.10006 =item * @@ -231,23 +227,23 @@ Catalyst::Plugin::Authorization::Roles -- v0.05 =item * -Catalyst::Plugin::ConfigLoader -- v0.17 +Catalyst::Plugin::ConfigLoader -- v0.20 =item * -Catalyst::Plugin::Session -- v0.18 +Catalyst::Plugin::Session -- v0.19 =item * -Catalyst::Plugin::Session::State::Cookie -- v0.08 +Catalyst::Plugin::Session::State::Cookie -- v0.09 =item * -Catalyst::Plugin::Session::Store::FastMmap -- v0.03 +Catalyst::Plugin::Session::Store::FastMmap -- v0.05 =item * -Catalyst::Plugin::StackTrace -- v0.06 +Catalyst::Plugin::StackTrace -- v0.08 =item * @@ -257,6 +253,14 @@ Catalyst::Plugin::Static::Simple -- v0.20 =item * +B You can check the versions you have installed with the +following command: + + perl -MEmod_nameE -e '"print $Emod_nameE::VERSION\n"' + +For example: + perl -MCatalyst::Plugin::StackTrace -e 'print "$Catalyst::Plugin::StackTrace::VERSION\n"' + Since the web browser is being used on the same box where Perl and the Catalyst development server is running, the URL of C will be used (the Catalyst development server @@ -267,24 +271,27 @@ will need to update the URL you use accordingly. =item * -Depending on the web browser you are using, you might need to hit -C to pull a fresh page when testing your application at -various points. Also, the C<-k> keepalive option to the development -server can be necessary with some browsers (especially Internet -Explorer). +Depending on the web browser you are using, you might need to hit +C or C to pull a fresh page when testing +your application at various points (see +L for a comprehensive +list of options for each browser). Also, the C<-k> keepalive option +to the development server can be necessary with some browsers +(especially Internet Explorer). =back + =head1 CATALYST INSTALLATION -If approach in the wrong manner, it can be a daunting tasks to get -Catalyst initially installed. Although a compelling strength of -Catalyst is that it makes use of many of the modules in the -vast repository that is CPAN, this can complicate the installation -process. However, there are a growing number of methods -that can dramatically ease this undertaking. Of these, the following -are likely to be applicable to the largest number of potential new -users: +While the rough edges of Catalyst installation have been a problem in +the past, this is now mostly solved. Nonetheless, installing Catalyst +can be a little time consuming. Although a compelling strength of +Catalyst is that it makes use of many of the modules in the vast +repository that is CPAN, this can complicate the installation process. +However, there are a growing number of methods that can dramatically +ease this undertaking. Of these, the following are likely to be +applicable to the largest number of potential new users: =over 4 @@ -292,17 +299,19 @@ users: Ubuntu -Given the popularity of Ubuntu and it's ease of use, Ubuntu can be -a great way for newcomers to experiment with Catalyst. Because it -is a "live CD," you can simply boot from the CD, run a few commands, -and you should have a fully functional environment in which to do -this tutorial in a matter of minutes. +Given the popularity of Ubuntu and its ease of use, Ubuntu can be a +great way for newcomers to experiment with Catalyst. Because it is a +"live CD," you can simply boot from the CD, run a few commands, and you +should have a fully functional environment in which to do this tutorial +in a matter of minutes. B =over 4 =item * -Download Ubuntu 8.04 (aka, Hardy Heron) Desktop edition and boot from +Download Ubuntu 8.10 (aka, Intrepid Ibex) Desktop edition and boot from the CD and/or image file, select your language, and then "Try Ubuntu without any changes to your computer." @@ -325,17 +334,18 @@ And remove the comments from the lines under the comments about the Install Catalyst: sudo apt-get update - sudo apt-get install libdbd-sqlite3-perl libcatalyst-perl libcatalyst-modules-perl + sudo apt-get install libdbd-sqlite3-perl libcatalyst-perl libcatalyst-modules-perl libconfig-general-perl + +Accept all of the dependencies. Done. + +If you are running from the Live CD, you probably also want to free up +some disk space with the following: -Accept all of the dependencies. Done. + sudo apt-get clean -NOTE: If you are low on disk space after the above commands (use C -to tell), you can free up some space with -C (the Live CD uses memory for -disk space, so having a decent amount of memory will help). And, -while the instructions above mention the Live CD because that makes it -easy for people new to Linux, you can obviously also use one of the -options to install Ubuntu on your drive. +NOTE: While the instructions above mention the Live CD because that +makes it easy for people new to Linux, you can obviously also use one +of the options to install Ubuntu on your drive. =back @@ -343,22 +353,49 @@ options to install Ubuntu on your drive. Matt Trout's C -Available at L, -C can be a quick and painless way to get Catalyst up and -running. Just download the script from the link above and type C. +Available at L, +C can be a fairly painless way to get Catalyst up and +running. Just download the script from the link above and type C. Depending on the speed of your Internet connection and +your computer, it will probably take 30 to 60 minutes to install because +it downloads, makes, compiles, and tests every module. But this is an +excellent way to automate the installation of all the latest modules +used by Catalyst from CPAN. + =item * -Chris Laco's CatInABox +Other Possibilities + +=over 4 + +=item * + +OpenBSD Packages + +The 2008 Advent Day 4 entry has more information on using OpenBSD +packages to quickly build a system: +L. + +=item * + +NetBSD Package Collection on Solaris -Download the tarball from -L and unpack it -on your machine. Depending on your OS platform, either run C -or C. +The 2008 Advent Day 15 entry has more information on using C and +NetBSD packages on Solaris: +L. =item * +CatInABox + +You can get more information at +L +or L. + + +=item * + Pre-Built VMWare Images Under the VMWare community program, work is ongoing to develop a number @@ -366,6 +403,18 @@ of VMWare images where an entire Catalyst development environment has already been installed, complete with database engines and a full complement of Catalyst plugins. +=item * + +Frank Speiser's Amazon EC2 Catalyst SDK + +There are currently two flavors of publicly available Amazon Machine +Images (AMI) that include all the elements you'd need to begin +developing in a fully functional Catalyst environment within minutes. +See L +for more details. + +=back + =back For additional information and recommendations on Catalyst installation, @@ -379,6 +428,7 @@ Using these instructions, you should be able to build a complete CentOS 4.X server with Catalyst and all the plugins required to run this tutorial. + =head1 DATABASES This tutorial will primarily focus on SQLite because of its simplicity @@ -391,19 +441,18 @@ notice that only the C<.sql> files used to initialize the database change between database systems: the Catalyst code generally remains the same. + =head1 WHERE TO GET WORKING CODE -Each part of the tutorial has complete code available in the main -Catalyst Subversion repository (see the note at the beginning of each -part for the appropriate svn command to use). Additionally, the final -code is available as a ready-to-run tarball at -L. +Each part of the tutorial has complete code available as a tarball in +the main Catalyst Subversion repository (see the note at the beginning +of each part for the appropriate svn command to use). -B You can run the test cases for the final code with the following -commands: +B You can run the test cases for the final code through Part 8 +with the following commands: - wget http://dev.catalyst.perl.org/repos/Catalyst/trunk/examples/Tutorial/Final_Tarball/MyApp.tgz - tar zxvf MyApp.tgz + wget http://dev.catalyst.perl.org/repos/Catalyst/trunk/examples/Tutorial/MyApp_Part8.tgz + tar zxvf MyApp_Part8.tgz cd MyApp CATALYST_DEBUG=0 prove --lib lib t @@ -414,9 +463,7 @@ Kennedy Clark, C Please report any errors, issues or suggestions to the author. The most recent version of the Catalyst Tutorial can be found at -L. - -Copyright 2006, Kennedy Clark, under Creative Commons License -(L). - +L. +Copyright 2006-2008, Kennedy Clark, under Creative Commons License +(L).