I Zope er begivenheder, der anvendes af komponenter til at informere hinanden om relevante nye objekter og objekt ændringer.
For at holde alle abonnenter ajour er det absolut nødvendigt, at livscyklus af et objekt er ledsaget af forskellige arrangementer.
& Nbsp; >>> fra zope.event import underrette
& Nbsp; >>> fra zope.lifecycleevent import ObjectCreatedEvent, ObjectModifiedEvent
& Nbsp; >>> klasse Sample (objekt):
& Nbsp; ... "Test klasse"
& Nbsp; >>> obj = Prøve ()
& Nbsp; >>> anmelde (ObjectCreatedEvent (obj))
& Nbsp; >>> obj.modified = True
& Nbsp; >>> anmelde (ObjectModifiedEvent (obj))
Nogle event forbrugere som kataloger og cacher kan have brug for flere oplysninger for at opdatere sig selv på en effektiv måde. De nødvendige oplysninger kan tilvejebringes som valgfri modifikation beskrivelser af ObjectModifiedEvent.
Nogle eksempler:
& nbsp; >>> fra zope.interface import interface, Attribut, redskaber
& Nbsp; >>> klasse iFile (Interface):
& Nbsp; ... data = Attribut ("data")
& Nbsp; ...
& Nbsp; >>> klasse Fil (objekt):
& Nbsp; ... instrumenter (iFile)
& Nbsp; ...
& Nbsp; >>> file = Fil ()
& Nbsp; >>> file.data = "123"
& Nbsp; >>> anmelde (ObjectModifiedEvent (obj, iFile))
Det siger, at vi ændrede noget via iFile. Bemærk, at en grænseflade er en acceptabel beskrivelse. Faktisk kan vi tillade stort set alt som en beskrivelse og det afhænger af dine behov, hvad slags beskrivelser, du bruger
Hvad er nyt i denne udgivelse:.
- Tilføj Trove klassificører angiver CPython og PYPY støtte.
Hvad er nyt i version 3.7.0:
- Tilføjet convenience funktioner til parallelle zope.lifecycleevent.modified for de andre begivenheder, der er defineret i denne pakke.
Krav :
- Python
Kommentarer ikke fundet