Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 78034f24

Von Sven Schöling vor etwa 14 Jahren hinzugefügt

  • ID 78034f2431414b414d171b720bc0438635e19ae5
  • Vorgänger 4aded4e8
  • Nachfolger 4fd22b56

Attribute Helper umgeschrieben.

Siehe Dokumentation SL::DB::Helpers::Attr.

Attributhelper werden jetzt beim Rose Start automatisch geladen.
numeric Felder bekommen immer einen as_number udn einen as_percent helper.
date Felder bekommen immer einen as_date helper.

as_date Helper kann jetzt auch mit 'now' umgehen.

Zusaätzliche Helper können zur Compilezeit mit

PACKAGE->meta->make_attr_helpers(column => 'type');

erstellt werden, wobei 'type' einfach das ist, was auch bei der autdetection
ind er Datenbank erkannt wird, z.B. "numeric(15,5)" oder "date". Die passenden
Helper werden dann installiert.

Unterschiede anzeigen:

SL/DB/Invoice.pm
10 10
use SL::DB::MetaSetup::Invoice;
11 11
use SL::DB::Manager::Invoice;
12 12

  
13
__PACKAGE__->attr_number($_, places => -2) for qw(amount netamount paid  marge_total marge_percent taxamount);
14
__PACKAGE__->attr_date($_) for qw(transdate gldate datepaid duedate deliverydate orddate quodate);
15
__PACKAGE__->attr_percent($_) for qw(abschlag_percentage);
16

  
17 13
__PACKAGE__->meta->add_relationship(
18 14
  invoiceitems => {
19 15
    type         => 'one to many',
......
59 55
  return $self->amount - $self->netamount;
60 56
}
61 57

  
58
__PACKAGE__->meta->make_attr_helpers(taxamount => 'numeric(15,5)');
59

  
62 60
1;

Auch abrufbar als: Unified diff