2007-02-01から1ヶ月間の記事一覧

__builtins__.dict.__init__ と __builtins__.dict.update は __builtins__.dict.__setitem__ を経由していない模様

>>> class D(__builtins__.dict): ... def __setitem__(self, k, v): ... print k, v ... super(D, self).__setitem__(k, v) >>> d = D(a = 0, b = 1, c = 2) >>> d.update(d = 3, e = 4, f = 5) >>> d['g'] = 6 g 6どうしろというのか。python 2.5 では変わ…

サイトマネージャからユーティリティの登録を抹消する

供給するインターフェースやイベントリスナやユーティリティの登録の抹消に関して、Zope は全てサポートしていない。ここではユーティリティの登録の抹消について言及する。 これは zope.schema.interfaces.IField から導出されたインターフェースを供給する…

Zope 3.2 で定義されているイベント

あるインターフェースを指定してイベントリスナを登録した場合、そのインターフェースから導出されたインターフェースのイベントも発生する。 zope.app.event.interfaces.IObjectEvent zope.app.event.interfaces.IObjectCreatedEvent - オブジェクトが ZODB…

Zope 3 でのイベントの使用方法

configure.zcml イベントリスナオブジェクトを登録する。handler に指定するイベントリスナオブジェクトは callable であること。trusted="true" とすると context にセキュリティプロキシが適用されないで渡される。 <subscriber for=" .interfaces.IHoge zope.app.event.interfaces.IObjectModifiedEvent " handler=".events.ObjectModifiedEventListener" trusted="true" /> events.py def ObjectR…</subscriber>