基本的に、object.aq_chain のアイテムを処理する前に、別のオブジェクトをチェックして、そこに属性が設定されているかどうかを確認したいと考えています。
getattr と getattribute をオーバーライドすると、無限再帰を回避できないようです。
アップデート
例:
import ExtensionClass, Acquisition
class Folder(ExtensionClass.Base): pass
class File(Acquisition.Implicit): pass
parent1 = Folder()
parent1.foo = 1
parent2 = Folder()
parent2.foo = 2
child = File()
parent1.child = child
child.otherparent = parent2
print parent1.child.foo # prints 1, but i want it to print 2
言うまでもなく、私が作業しようとしている API があります。