În Zope, evenimentele sunt folosite de componente să se informeze reciproc cu privire la obiecte noi relevante și obiect modificări.
Pentru a păstra toți abonații la curent este indispensabil ca ciclul de viață al unui obiect este însoțit de diverse evenimente.
& Nbsp; >>> din import zope.event notifica
& Nbsp; >>> din ObjectCreatedEvent import zope.lifecycleevent, ObjectModifiedEvent
& Nbsp; >>> Exemplu clasa (obiect):
& Nbsp; ... "class Test"
& Nbsp; >>> obj = Exemplu ()
& Nbsp; >>> notificare (ObjectCreatedEvent (obj))
& Nbsp; >>> obj.modified = True
& Nbsp; >>> notificare (ObjectModifiedEvent (obj))
Unii consumatori de evenimente, cum ar fi cataloage și cache pot nevoie de mai multe informații pentru a se actualiza în mod eficient. Informațiile necesare pot fi furnizate descrieri modificare opționale ale ObjectModifiedEvent.
Câteva exemple:
& nbsp; >>> din Interface import zope.interface, atribut, unelte
& Nbsp; >>> clasa iFile (Interface):
& Nbsp; ... date = Atribut ("Data")
& Nbsp; ...
& Nbsp; >>> fisier clasa (obiect):
& Nbsp; ... unelte (iFile)
& Nbsp; ...
& Nbsp; >>> file = fisier ()
& Nbsp; >>> file.data = "123"
& Nbsp; >>> notificare (ObjectModifiedEvent (obj, iFile))
Aceasta spune ca am modificat ceva prin iFile. Rețineți că o interfață este o descriere acceptabilă. De fapt, s-ar putea permite ceva destul de mult ca o descriere și depinde de nevoile dumneavoastra ce fel de descrieri pe care le utilizați
Ce este nou în această versiune:.
- Adăugați clasificatoare comoara indică CPython și PyPy sprijin.
Ce este nou în versiunea 3.7.0:
- funcții confort la paralele zope.lifecycleevent.modified pentru celelalte evenimente definite în acest pachet.
Cerințe :
- Python
Comentariile nu a fost găsit