use strict;
use warnings;
-use Tie::IxHash;
use base qw/DBIx::Class::Row/;
my ($self) = @_;
delete $self->{_dirty_columns};
return unless $self->in_storage; # Don't reload if we aren't real!
- my ($reload) = $self->find(map { $self->$_ } $self->primary_columns);
+ my ($reload) = $self->result_source->resultset->find(map { $self->$_ } $self->primary_columns);
unless ($reload) { # If we got deleted in the mean-time
$self->in_storage(0);
return $self;
}
sub _create_ID {
- my ($class,%vals) = @_;
+ my ($self,%vals) = @_;
return undef unless 0 == grep { !defined } values %vals;
- $class = ref $class || $class;
- return join '|', $class, map { $_ . '=' . $vals{$_} } sort keys %vals;
+ return join '|', ref $self || $self, $self->result_source->name, map { $_ . '=' . $vals{$_} } sort keys %vals;
}
sub ident_condition {