my ($self, $r, $obj) = @_;
$self->_croak( "Object method only") unless $obj;
- if ($r->params->{submit} eq 'drink') {
- $r->params->{drinker} = $self;
- my ($pint, $errs) = $self->related_class($r, 'pints')->create_from_cgi($r);
- $r->template_args->{errors} = $errs if $errs;
+ if ($r->params->{submit}) {
+ my ($pint) = $obj->add_to_from_cgi($r);
+ if (my $errs = $obj->cgi_update_errors) {
+ $r->template_args->{errors} = $errs;
+ }
}
my %cgi = $self->to_cgi('pints');
- $cgi{pints}{drinker} = $obj->to_field(drinker => 'link_hidden', {r => $r});
+ delete $cgi{pints}{drinker}; # = $obj->to_field(drinker => 'link_hidden', {r => $r});
$r->template_args->{classmetadata}{cgi} = \%cgi ;
}