]> git.decadent.org.uk Git - maypole.git/blobdiff - lib/Maypole/Model/CDBI/AsForm.pm
fixed bug in DFV model when updating object
[maypole.git] / lib / Maypole / Model / CDBI / AsForm.pm
index b8e4e91a483191f424d6d6ac203f0bdb63351196..06f1039f3f1da76866a975733e63dbd0efb9909b 100644 (file)
@@ -983,7 +983,8 @@ sub _to_foreign_inputs {
   my $rel_meta = $args->{related_meta} || $self->related_meta('r',$accssr); 
   my $fields           = $args->{columns};
   if (!$rel_meta) {
-    $self->_croak( "No relationship for accessor $accssr");
+    $self->_carp( "[_to_foreign_inputs] No relationship for accessor $accssr");
+    return;
   }
 
   my $rel_type = $rel_meta->{name};
@@ -1173,11 +1174,13 @@ objects stringify method specified in $args->{stringify} as the content. Otherwi
 sub _options_from_objects {
   my ($self, $items, $args) = @_;
   my $selected = $args->{selected} || {};
-  my $stringify = $args->{stringify};
 
   my @res;
   for my $object (@$items) {
-    $stringify ||= $object->stringify_column if ($object->can('stringify_column'));
+    my $stringify = $args->{stringify};
+    if ($object->can('stringify_column') ) {
+      $stringify ||= $object->stringify_column if ($object->can($object->stringify_column));
+    }
     my $id = $object->id;
     my $opt = HTML::Element->new("option", value => $id);
     $id =~ s/^0*//;            # leading zeros no good in hash key