X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FResultSetManager.pm;h=c2af0f23e68b4ad727eff17ef9a99c1c12b1abd9;hb=cdab6a28aacaac6f57efc024db5f8b3f37b84f30;hp=5891d7f23678ba7c0a388d1aa017ebb0a6cda7ee;hpb=e250c0464f5263e12d067369beca02616e7ea9a0;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/ResultSetManager.pm b/lib/DBIx/Class/ResultSetManager.pm index 5891d7f..c2af0f2 100644 --- a/lib/DBIx/Class/ResultSetManager.pm +++ b/lib/DBIx/Class/ResultSetManager.pm @@ -9,9 +9,12 @@ __PACKAGE__->table_resultset_class_suffix('::_resultset'); sub table { my ($self,@rest) = @_; - $self->next::method(@rest); - $self->_register_attributes; - $self->_register_resultset_class; + my $ret = $self->next::method(@rest); + if (@rest) { + $self->_register_attributes; + $self->_register_resultset_class; + } + return $ret; } sub load_resultset_components { @@ -32,7 +35,7 @@ sub _register_attributes { no strict 'refs'; my $resultset_class = $self->_setup_resultset_class; *{"$resultset_class\::$meth"} = $self->can($meth); - undef *{"$self\::$meth"}; + delete ${"${self}::"}{$meth}; } } } @@ -73,7 +76,7 @@ __END__ __PACKAGE__->load_resultset_components(qw/AlwaysRS/); # will be removed from the table class and inserted into a table-specific resultset class - sub foo : resultset { ... } + sub foo : ResultSet { ... } =head1 DESCRIPTION