use Catalyst::Utils;
use Catalyst::Controller;
use Catalyst::Context;
+use Catalyst::Exception::Detach;
+use Catalyst::Exception::Go;
use Devel::InnerPackage ();
use Module::Pluggable::Object ();
use Text::SimpleTable ();
}
my $meta = Moose::Meta::Class->initialize($caller);
+ # Make the caller inherit from Catalyst
unless ( $caller->isa('Catalyst') ) {
- my @superclasses = ($meta->superclasses, $class, 'Catalyst::Controller');
- $meta->superclasses(@superclasses);
+ $meta->superclasses($meta->superclasses, 'Catalyst');
}
# Avoid possible C3 issues if 'Moose::Object' is already on RHS of MyApp
$meta->superclasses(grep { $_ ne 'Moose::Object' } $meta->superclasses);
return $c->component( $c->action->class );
}
+=head2 $c->view($name)
+
+Gets a L<Catalyst::View> instance by name.
+
+=cut
+
sub view {
my ( $c, $name, @args ) = @_;
return $c->_filter_component( $comp );
}
+=head2 $c->model($name)
+
+Gets a L<Catalyst::Model> instance by name.
+
+=cut
+
sub model {
my ( $c, $name, @args ) = @_;
if( $name ) {
if ( keys %{ $class->components } );
}
- # Add our self to components, since we are also a component
- if( $class->isa('Catalyst::Controller') ){
- $class->components->{$class} = $class;
- }
-
$class->setup_actions;
if ( $class->debug ) {