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/
