$class->result_source_instance($table);
- if ($class->can('schema_instance')) {
- $class =~ m/([^:]+)$/;
- $class->schema_instance->register_class($class, $class);
- }
-
return $table;
}
sub table {
my ($class, $table) = @_;
return $class->result_source_instance->name unless $table;
- unless (ref $table) {
+
+ unless (Scalar::Util::blessed($table) && $table->isa($class->table_class)) {
$table = $class->table_class->new({
$class->can('result_source_instance') ?
%{$class->result_source_instance||{}} : (),
$class->result_source_instance($table);
- if ($class->can('schema_instance')) {
- $class =~ m/([^:]+)$/;
- $class->schema_instance->register_class($class, $class);
- }
+ return $class->result_source_instance->name;
}
=head2 has_column