X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FManual%2FTutorial%2FAdvancedCRUD.pod;h=6e157e0dece38d4e5ccef1124c662d2cb217a4b4;hb=c9b77c06a0de97f1d6e9a66091e693a637578357;hp=6116797ce15cfb60483a1a4631d98f3c56fc7c00;hpb=fb39c27a729c8382fc47f5cc5699e66aa2c6b09c;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Manual/Tutorial/AdvancedCRUD.pod b/lib/Catalyst/Manual/Tutorial/AdvancedCRUD.pod index 6116797..6e157e0 100644 --- a/lib/Catalyst/Manual/Tutorial/AdvancedCRUD.pod +++ b/lib/Catalyst/Manual/Tutorial/AdvancedCRUD.pod @@ -83,7 +83,7 @@ B: Note that all of the code for this part of the tutorial can be pulled from the Catalyst Subversion repository in one step with the following command: - svn checkout http://dev.catalyst.perl.org/repos/Catalyst/trunk/examples/Tutorial -r 4627 . + svn co http://dev.catalyst.perl.org/repos/Catalyst/tags/examples/Tutorial/MyApp/5.7/AdvancedCRUD MyApp =head1 C FORM CREATION @@ -130,11 +130,11 @@ following method: return $w; } -This method provides a central location that builds an HTML::Widget- -based form with the appropriate fields. The "Get Authors" code uses -DBIC to retrieve a list of model objects and then uses C to create -a hash where the hash keys are the database primary keys from the -authors table and the associated values are the last names of the +This method provides a central location that builds an +HTML::Widget-based form with the appropriate fields. The "Get authors" +code uses DBIC to retrieve a list of model objects and then uses C +to create a hash where the hash keys are the database primary keys from +the authors table and the associated values are the last names of the authors. =head2 Add Actions to Display and Save the Form @@ -544,6 +544,9 @@ match the following code: # Set a status message for the user $c->stash->{status_msg} = 'Book created'; + + # Redisplay an empty form for another + $c->stash->{widget_result} = $w->result; } # Set the template @@ -556,7 +559,12 @@ C<$c-Emodel('MyAppDB::Book')-Ecreate> and replaced it with a single call to C<$book-Epopulate_from_widget>. Note that we still have to call C<$book-Eadd_to_book_authors> once per author because C does not currently handle the relationships -between tables. +between tables. Also, we reset the form to an empty fields by adding +another call to C<$w-Eresult> and storing the output in the stash +(if we don't override the output from C<$w-Eprocess($c-Ereq)>, +the form values already entered will be retained on redisplay -- +although this could be desirable for some applications, we avoid it +here to help avoid the creation of duplicate records). =head2 Try Out the Form @@ -575,7 +583,9 @@ you added should be visible. Some developers my wish to use the "old-fashioned" table style of rendering a form in lieu of the default C rendering that -assumes you will use CSS for formatting. +assumes you will use CSS for formatting. This section demonstrates +some techniques that can override the default rendering with a +custom class. =head2 Add a New "Element Container" @@ -720,7 +730,7 @@ the second field. =item * -JavaScript to position the user's curson in the first field of the form. +JavaScript to position the user's cursor in the first field of the form. =back @@ -741,7 +751,7 @@ you added should be visible. Kennedy Clark, C Please report any errors, issues or suggestions to the author. The -most recent version of the Catlayst Tutorial can be found at +most recent version of the Catalyst Tutorial can be found at L. Copyright 2006, Kennedy Clark, under Creative Commons License