X-Git-Url: https://git.decadent.org.uk/gitweb/?p=maypole.git;a=blobdiff_plain;f=lib%2FMaypole%2FModel%2FCDBI%2FDFV.pm;h=a16fa30e3adea337dba6239ee6ec8b8df98a424f;hp=5a74f71848433e00038c55390045806cbffd7702;hb=99967c293b1b617a0cac8126f923f6acfa2e4598;hpb=f591252a06f4b7a9db154062128f4f2a59831cac diff --git a/lib/Maypole/Model/CDBI/DFV.pm b/lib/Maypole/Model/CDBI/DFV.pm index 5a74f71..a16fa30 100644 --- a/lib/Maypole/Model/CDBI/DFV.pm +++ b/lib/Maypole/Model/CDBI/DFV.pm @@ -140,6 +140,7 @@ sub do_edit : Exported { return; } + my $errors; if ($obj) { ($obj,$errors) = $class->_do_update($r,$obj); @@ -183,6 +184,7 @@ sub _do_update { } my $this_class_params = { map { $_ => $r->{params}{$_} } $class->columns }; + delete $this_class_params->{route_id}; # update or make other related (must_have, might_have, has_many etc ) unless ($errors) { @@ -190,7 +192,7 @@ sub _do_update { # get related object if it exists my $rel_meta = $class->related_meta('r',$accssr); if (!$rel_meta) { - $class->_carp("No relationship for $accssr in " . ref($class)); + $r->warn("[_do_update] No relationship for $accssr in " . ref($class)); next; } @@ -212,7 +214,6 @@ sub _do_update { } return ($obj,$errors); - } sub _do_create { @@ -257,7 +258,7 @@ sub _create_related { my $created = []; my $rel_meta = $self->related_meta('r',$accssr); if (!$rel_meta) { - $self->_carp("No relationship for $accssr in " . ref($self)); + $self->_carp("[_create_related] No relationship for $accssr in " . ref($self)); return; }