Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision a27dd3ae

Von Sven Schöling vor fast 13 Jahren hinzugefügt

  • ID a27dd3ae50d468c4e27ae6882ecca1fc7f3891ea
  • Vorgänger f6a762c9
  • Nachfolger 64084bfa

Manager: find_by_or_create, sichere Variante ein Objekt zu finden oder zu autovivifien.

Unterschiede anzeigen:

SL/DB/Helper/Manager.pm
18 18
  return $class->get_all(query => [ @_ ], limit => 1)->[0];
19 19
}
20 20

  
21
sub find_by_or_create {
22
  my $class = shift;
23

  
24
  my $found;
25
  eval { $found = $class->find_by(@_); };
26
  return defined $found ? $found : $class->object_class->new;
27
}
28

  
21 29
sub get_first {
22 30
  shift->get_all(
23 31
    @_,

Auch abrufbar als: Unified diff