Check this out:
http://search.cpan.org/~hkclark/Catalyst-Manual-5.8000/lib/Catalyst/Manual/ExtendingCatalyst.pod#Attributesand
http://search.cpan.org/~hkclark/Catalyst-Manual-5.8000/lib/Catalyst/Manual/ExtendingCatalyst.pod#Action_classes


On Mon, Jul 13, 2009 at 12:27 AM, Toby Corkindale <
[email protected]> wrote:

> Toby Corkindale wrote:
>
>> Hi,
>> I wondered if anyone could point me towards a working example of creating
>> custom action attribute handlers for Catalyst?
>>
>> eg. The contents of Catalyst::Controller::SecretAgent in the example
>> below:
>>
>>
>> package MyApp::Controller::M;
>> use parent 'Catalyst::Controller::SecretAgent';
>> # Provides Vehicle() and Gimmick() actions.
>>
>> sub bond : Vehicle('Aston Martin') {
>>  my ($self, $c) = @_;
>>  # ...
>> }
>>
>> sub maxwell_smart : Gimmick('Shoe-phone') {
>>  My ($self, $c) = @_;
>>  #...
>> }
>>
>> 1;
>>
>
>
> I should clarify what I'm after..
> I'd still like to be able to specify regular DispatchType attributes
> against the routines (eg. Local, Chained, etc), but I'd also like to have my
> own methods called against the other attributes I've specified.
>
> The first method I tried was:
>  package Catalyst::Controller::SecretAgent;
>  use strict / use warnings
>  use parent 'Catalyst::Controller';
>  use attributes __PACKAGE__ => \&set_vehicle, "Vehicle";
>  sub set_vehicle { # do something }
>  ...
>
> but I think that messes up catalyst's own handling of attributes.
>
>
> _______________________________________________
> List: [email protected]
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive:
> http://www.mail-archive.com/[email protected]/
> Dev site: http://dev.catalyst.perl.org/
>



-- 
Devin Austin
http://www.codedright.net
http://www.dreamhost.com/r.cgi?326568/hosting.html - Host with DreamHost!
_______________________________________________
List: [email protected]
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/[email protected]/
Dev site: http://dev.catalyst.perl.org/

Reply via email to