X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FSchema%2FLoader%2FBase.pm;h=5c395b925c7309e47cab2270cdb0a2654c1faa04;hb=45be2ce774dc5af71a60397db33bc952c22aa489;hp=d41f8230729220e7a01b70236c4fca4f2cb41969;hpb=c0084472a2f4515cbbd3970773b7d52ff20bcc45;p=dbsrgits%2FDBIx-Class-Schema-Loader.git diff --git a/lib/DBIx/Class/Schema/Loader/Base.pm b/lib/DBIx/Class/Schema/Loader/Base.pm index d41f823..5c395b9 100644 --- a/lib/DBIx/Class/Schema/Loader/Base.pm +++ b/lib/DBIx/Class/Schema/Loader/Base.pm @@ -1352,34 +1352,28 @@ sub _setup_src_meta { $self->_dbic_stmt($table_class,'table',$table_name); my $cols = $self->_table_columns($table); - my $col_info; - eval { $col_info = $self->__columns_info_for($table) }; - if($@) { - $self->_dbic_stmt($table_class,'add_columns',@$cols); - } - else { - if ($self->_is_case_sensitive) { - for my $col (keys %$col_info) { - $col_info->{$col}{accessor} = lc $col - if $col ne lc($col); - } - } else { - $col_info = { map { lc($_), $col_info->{$_} } keys %$col_info }; + my $col_info = $self->__columns_info_for($table); + if ($self->_is_case_sensitive) { + for my $col (keys %$col_info) { + $col_info->{$col}{accessor} = lc $col + if $col ne lc($col); } + } else { + $col_info = { map { lc($_), $col_info->{$_} } keys %$col_info }; + } - my $fks = $self->_table_fk_info($table); + my $fks = $self->_table_fk_info($table); - for my $fkdef (@$fks) { - for my $col (@{ $fkdef->{local_columns} }) { - $col_info->{$col}{is_foreign_key} = 1; - } + for my $fkdef (@$fks) { + for my $col (@{ $fkdef->{local_columns} }) { + $col_info->{$col}{is_foreign_key} = 1; } - $self->_dbic_stmt( - $table_class, - 'add_columns', - map { $_, ($col_info->{$_}||{}) } @$cols - ); } + $self->_dbic_stmt( + $table_class, + 'add_columns', + map { $_, ($col_info->{$_}||{}) } @$cols + ); my %uniq_tag; # used to eliminate duplicate uniqs