Du stiliai įsigijimo palaiko: tiesioginis ir netiesioginis įsigijimą.
Numanomas įsigijimas yra taip pavadintas, nes jis ieško atributus iš aplinkos automatiškai, kai atributas negali būti gauta tiesiogiai iš objekto ar per paveldėjimo.
Atributas gali būti netiesiogiai įsigijo jei jos pavadinimas neprasideda su pabraukimo.
Remti numanomą įsigijimo, jūsų klasė turėtų paveldėti iš Mix-klasėje Acquisition.Implicit.
Kai aiškų įsigyti yra naudojamas, požymiai nėra automatiškai gaunamas iš aplinkos. Vietoj to, turi būti naudojamas metodas aq_acquire.
Įsigijimas yra parašyta Python.
Įsigijimas suteikia galingą būdą dinamiškai keistis informacija tarp objektų. Zope 2 naudoja įsigijimą už savo pagrindinių funkcijų, įskaitant saugumo, objektas leidybos ir DTML kintamojo paieškos skaičiaus.
Įsigijimas taip pat suteikia elegantišką sprendimą dėl nelogiškų nuorodų problema daugeliui klasių problemas. Nors įsigijimas yra galingas, jums reikia rūpintis, naudojant įsigijimą savo programas.
Šie duomenys gali gauti sudėtinga, ypač tarp įsigyti iš konteksto ir įgyti iš izoliavimo skirtumų
Kas naujo , šioje laidoje.
- Padaryti grynas Python įgijėjas objektai drauge naudoti superclass __getattribute__ metodą, pavyzdžiui, C įgyvendinti.
- grynas Python numanoma įsigijimo įvynioti leidžia suvynioti objektus naudoti objekto .__ getAttribute __ (savitarna pavadinimas). Tai skiriasi nuo C įgyvendinti, bet yra svarbus suderinamumo su grynai Python versijos bibliotekų kaip patvarus. "
Kas naujo versijos 4.2.1:
- Pereiti readme.rst bandymus, kai bandymai paleisti už jos ribų šaltinis kasos.
Kas naujo versijos 4.2:
- Pereiti readme.rst bandymus, kai bandymai paleisti už jos ribų šaltinis kasos.
Kas naujo versija 4.1:
- Pereiti readme.rst bandymus, kai bandymai paleisti už jos ribų šaltinis kasos.
Kas naujo versija 4.0a1:
- Pakelkite Runtimeerror: Rekursija aptikta įsigijimo įvynioti, jei objektas su __parent__ rodyklė nukreipia į įvynioti, kuris savo ruožtu kiekis į pradinį objektą.
- Užkirsti kelią vyniojimo būti sukurta, o gauti __parent__ tipuose, gautų iš aiškų arba numanomą bazinių klasių.
Kas naujo versijos 2.13.8:
- Fiksuotas segfault ant 64bit platformos teikiant aiškiai argumentai, aq_acquire metodą Įsigijimo įvynioti.
Kas naujo versijos 2.13.7:
- Ištaisyta klaida: kai objektas neįgyvendino __unicode__ , ragindamas Unicode (suvynioti) buvo raginama __str__ su nesuvyniotų save.
Kas naujo versijos 2.13.6.
- Pridėti aq_explicit į IAcquisitionWrapper
- Ištaisyta klaida: Unicode (suvynioti) nebuvo paskambinus __unicode__ metodą suvynioti objektų, .
Kas naujo versijos 2.13.5:
- Fiksuoti vieneto testai kad nepavyko ant 64bit Python Windows mašinos.
Kas naujo versijos 2.13.4.
- Fiksuotas klaidos ir Acquisition.h
Kas naujo versijos 2.13.3:
- Naudodami doctest modulį nuo standartinės bibliotekos ir ne daugiau priklauso nuo zope.testing.
Kas naujo versijos 2.13.2:
- Duoti tiek suvynioto klasėms __getnewargs__ metodą, kuris sukelia ZODB optimizavimas žlugti ir sukurti nuolatines nuorodas per _p_oid vieni. Tai atsitinka būti patvarios oid iš suvynioti objektą. Tai leidžia šie objektai turi būti išliko teisingai, nors jie yra perduodami į ZODB apgaubtu valstybės.
- Įdiegtas žlungančios testai http://dev.plone.org/plone/ticket/10318. Tai rodo Briaunų atvejį, kai AQ vyniojimo galima marinuoti naudojant specialią kombinaciją cPickle, marinatas protokolas vienas ir pasirinktinį Pickler klasę su inst_persistent_id kablio. Deja, tai tiksli kombinacija naudojama ZODB3.
Komentarai nerastas