Obsługiwane są dwa style nabycia: jawnych i niejawnych nabycia.
Niejawny nabycia jest tak nazwany, ponieważ szuka atrybutów z otoczenia automatycznie, gdy atrybut nie można uzyskać bezpośrednio z obiektu lub w drodze dziedziczenia.
Atrybut może być pośrednio nabył jej nazwa nie zaczyna się od znaku podkreślenia.
Aby wesprzeć niejawny nabycia, klasa powinna dziedziczyć z klasy w mix Acquisition.Implicit.
Gdy stosuje się wyraźne nabycia atrybuty nie są automatycznie z otoczenia. Zamiast tego, należy stosować metodę aq_acquire.
Nabycie jest napisany w Pythonie.
Nabycie zapewnia silny sposób na dynamiczne akcje informacji między obiektami. Zope 2 wykorzystuje nabycie przez szereg kluczowych funkcji, takich jak bezpieczeństwo, obiektów publikacji i DTML zmiennej odnośnika.
Przejęcie również eleganckie rozwiązanie problemu odniesienia okrągłe do wielu klas problemów. Podczas gdy nabycie jest potężny, należy zachować ostrożność podczas korzystania z nabycia w aplikacjach.
Szczegółowe informacje można uzyskać skomplikowane, zwłaszcza z różnic między nabycia od kontekstu i pozyskiwania od powstrzymywania
Co nowego w tym wydaniu:.
- Python Wzywający czystej obiektów wspólnie wykorzystywać metody nadklasy __getattribute__, jak wdrożenie C.
- wrapper nabycia czystej Python pozwala owinięte obiekty ukryte wykorzystania obiektu .__ __ getAttribute (nazwę) samodzielne. To różni się od realizacji C, ale jest ważny dla zgodności z czystej wersji Python bibliotek takich jak trwałe.
Co nowego w wersji 4.2.1:
- Przejdź testy readme.rst gdy badania są prowadzone poza Zamówienie źródło.
Co nowego w wersji 4.2:
- Przejdź testy readme.rst gdy badania są prowadzone poza źródła kasa.
Co nowego w wersji 4.1:
- Przejdź testy readme.rst gdy badania są prowadzone poza źródła kasa.
Co nowego w wersji 4.0a1:
- Podnieść RuntimeError: Rekurencja wykryty w przejęcia, jeśli obiekt wrapper z __parent__ wskaźnik pokaże opakowaniu, że w punktach zwrotnych do oryginalnego obiektu.
- opakowania Zapobieganie być tworzone podczas dostępu __parent__ sprawie rodzajów pochodzących z klas wyraźnej lub dorozumianej bazowych.
Co nowego w wersji 2.13.8:
- Poprawiono segfault, gdy na platformach 64-bitowych zapewniając wyraźne argumentem metody aq_acquire z otoki Acquisition.
Co nowego w wersji 2.13.7:
- Naprawiono błąd: Kiedy obiekt nie wdrożyła __unicode__ , nazywając Unicode (zawinięte) wzywał __str__ z rozpakowanym siebie.
Co nowego w wersji 2.13.6:.
- Dodaj aq_explicit do IAcquisitionWrapper
- Naprawiono błąd: Unicode (zawinięte) nie było wywołanie metody __unicode__ na zapakowanych przedmiotów .
Co nowego w wersji 2.13.5:
- Stałe testy jednostkowe, których nie udało się na 64-bitowym systemie Windows Python maszyny.
Co nowego w wersji 2.13.4:.
- Naprawiono błąd w Acquisition.h
Co nowego w wersji 2.13.3:
- Użyj doctest moduł z biblioteki standardowej, a nie zależą już od zope.testing.
Co nowego w wersji 2.13.2:
- Daj obu klas wrapper metodę __getnewargs__, co powoduje optymalizacja ZODB na porażkę i tworzyć trwałe odniesienia wykorzystywać tylko _p_oid. Dzieje się tak być trwałe oid zawiniętego obiektu. Dzięki temu obiekty te utrzymywały się prawidłowo, mimo że są one przekazywane do ZODB w owinięta państwa.
- Dodane upadające testy dla http://dev.plone.org/plone/ticket/10318. Pokazuje to przypadek, w którym krawędź-owijarki AQ może być marynowana pomocą specyficzną kombinację cPickle, protokół i zalewa jedną klasę Pickler z niestandardowego hak inst_persistent_id. Niestety, jest to dokładne połączenie używane przez ZODB3.
Komentarze nie znaleziono