Catalyst::Component::ACCEPT_CONTEXT
Catalyst::Component::ACCEPT_CONTEXT
これで、$cにアクセスできるなぁ。でも、model , view でってかいてあるなぁ。controllerもこれでいけるなぁ。他にいい方法があるのかなぁ。
例:
package CatalystX::Controller::FormValidator; use strict; use warnings; use base qw(Catalyst::Controller Catalyst::Component::ACCEPT_CONTEXT); use Data::FormValidator; our $VERSION = "0.01"; sub form { my $s = shift; my $c = $s->context; if ( $_[0] ) { my $form = $_[1] ? {@_} : $_[0]; $s->{form} = Data::FormValidator->check( $c->request->parameters , $form ); } return $s->{form}; } 1;