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/

Reply via email to