Some more doc tweaking.
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Controller.pm
index ee39c7b..9c230e9 100644 (file)
@@ -448,32 +448,23 @@ Sets 'path_prefix', as described below.
 
 =head2 action_args
 
-Allows you to set instantiation arguments on your custom Actions or ActionRoles.
-You can set args globally (shared across all actions) and specifically (for a
-single action).
+Allows you to set constructor arguments on your Actions. You can set arguments
+globally (for all actions of the controller) and specifically (for a single
+action). This is particularly useful when using C<ActionRole>s
+(L<Catalyst::Controller::ActionRole>) and custom C<ActionClass>es.
 
-    package MyApp::Web::Controller::MyController;
-    use parent 'Catalyst::Controller';    
-
-    __PACKAGE__->config({
+    __PACKAGE__->config(
         action_args => {
-            '*' => {globalarg1=>'hello', globalarg2=>'goodbye'},
-            'specific_action' => {customarg=>'arg1'},
-        },      
-     });
-    
-    sub specific_action :Path('') ActionClass('CustomActionClass') {}
-    
-    1;
-
-In the case above, your 'CustomActionClass' would get passed the following
-arguments when it is instantiated: (globalarg1=>'hello', globalarg2=>'goodbye',
-'customarg=>'arg1').  Please note that the order the arguments are passed are not
-certain to be in the order declared.
-
-As with all other configuration hashes, you can set values inline with your
-controller (as above) or centrally via a configuration file (such as you might
-use with the ConfigLoader plugin).
+            '*' => { globalarg1 => 'hello', globalarg2 => 'goodbye' },
+            'specific_action' => { customarg => 'arg1' },
+        },
+     );
+
+In the case above the action class associated with C<specific_action> would get
+passed the following arguments, in addition to the normal action constructor
+arguments, when it is instantiated:
+
+  (globalarg1 => 'hello', globalarg2 => 'goodbye', customarg => 'arg1')
 
 =head1 METHODS