X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Manual.git;a=blobdiff_plain;f=lib%2FCatalyst%2FManual%2FTutorial%2F05_Authentication.pod;h=d098c1c4fbc9772f6fd06d76097f0288eb5c2584;hp=7b187a4a529757ee6c11a6c866f819a0f3c84c94;hb=9c5abba4e91b19f5605d39533cdc36cdd03f72ee;hpb=d8e9b469736c9313a09ce5f08d10d1a467ffae09 diff --git a/lib/Catalyst/Manual/Tutorial/05_Authentication.pod b/lib/Catalyst/Manual/Tutorial/05_Authentication.pod index 7b187a4..d098c1c 100644 --- a/lib/Catalyst/Manual/Tutorial/05_Authentication.pod +++ b/lib/Catalyst/Manual/Tutorial/05_Authentication.pod @@ -1,4 +1,4 @@ -=head1 NAME +head1 NAME Catalyst::Manual::Tutorial::05_Authentication - Catalyst Tutorial - Chapter 5: Authentication @@ -63,8 +63,9 @@ L). This chapter of the tutorial is divided into two main sections: 1) basic, cleartext authentication and 2) hash-based authentication. -You can checkout the source code for this example from the catalyst -subversion repository as per the instructions in +Source code for the tutorial in included in the F directory +of the Tutorial Virtual machine (one subdirectory per chapter). There +are also instructions for downloading the code in L. @@ -131,11 +132,11 @@ for us: $ script/myapp_create.pl model DB DBIC::Schema MyApp::Schema \ create=static components=TimeStamp dbi:SQLite:myapp.db \ on_connect_do="PRAGMA foreign_keys = ON" - exists "/root/dev/MyApp/script/../lib/MyApp/Model" - exists "/root/dev/MyApp/script/../t" - Dumping manual schema for MyApp::Schema to directory /root/dev/MyApp/script/../lib ... + exists "/home/catalyst/dev/MyApp/script/../lib/MyApp/Model" + exists "/home/catalyst/dev/MyApp/script/../t" + Dumping manual schema for MyApp::Schema to directory /home/catalyst/dev/MyApp/script/../lib ... Schema dump completed. - exists "/root/dev/MyApp/script/../lib/MyApp/Model/DB.pm" + exists "/home/catalyst/dev/MyApp/script/../lib/MyApp/Model/DB.pm" $ $ ls lib/MyApp/Schema/Result Author.pm BookAuthor.pm Book.pm Role.pm User.pm UserRole.pm @@ -166,7 +167,7 @@ C<1;>: # 2) Name of has_many() relationship this many_to_many() is shortcut for # 3) Name of belongs_to() relationship in model class of has_many() above # You must already have the has_many() defined to use a many_to_many(). - __PACKAGE__->many_to_many(roles => 'user_roles', 'role_id'); + __PACKAGE__->many_to_many(roles => 'user_roles', 'role'); The code for this update is obviously very similar to the edits we made to the C and C classes created in @@ -323,7 +324,7 @@ B, if you try out the command above, be sure to delete the configurations. B Because we are using -L along with a +L along with a database layout that complies with its default assumptions: we don't need to specify the names of the columns where our username and password information is stored (hence, the "Simple" part of "SimpleDB"). That @@ -694,7 +695,7 @@ Then run the following command: $ DBIC_TRACE=1 perl -Ilib set_hashed_passwords.pl -We had to use the C<-Ilib> argument to tell perl to look under the +We had to use the C<-Ilib> argument to tell Perl to look under the C directory for our C model. The DBIC_TRACE output should show that the update worked: @@ -741,7 +742,7 @@ change is to the C field): ); The use of C will cause -Catalyst::Plugin::Authentication::Store::DBIC to call the +Catalyst::Plugin::Authentication::Store::DBIx::Class to call the C method we enabled on our C columns. @@ -863,6 +864,8 @@ C to the list of plugins: ConfigLoader Static::Simple + StackTrace + Authentication Session @@ -951,17 +954,18 @@ token, it is ignored -- thereby keeping the state of our status/error messages in sync with the users actions). +You can jump to the next chapter of the tutorial here: +L + + =head1 AUTHOR Kennedy Clark, C Feel free to contact the author for any errors or suggestions, but the best way to report issues is via the CPAN RT Bug system at -. - -The most recent version of the Catalyst Tutorial can be found at -L. +L. -Copyright 2006-2010, Kennedy Clark, under the +Copyright 2006-2011, Kennedy Clark, under the Creative Commons Attribution Share-Alike License Version 3.0 (L).