0
from ming.odm.mapper import MapperExtension
class MyExtension(MapperExtension):
    def after_insert(self, obj, st):
        print "instance %s after insert !" % obj

class MyMappedClass(MappedClass):
    class __mongometa__:
        session = session
        name = 'my_mapped_class'
        extensions = [ MyExtension ]

    _id = FieldProperty(schema.ObjectId)
    data = FieldProperty(schema.String,if_missing='')

公式の Ming ドキュメントから MapperExtension を使用しようとしました。ドキュメントを作成すると、次のようになります。

t = model.MyMappedClass()
model._session.flush()

TypeError: before_insert() takes exactly 3 arguments (4 given)
4

1 に答える 1

0

MapperExtension基本クラスにバグがあり、master ブランチとドキュメントで修正されたことが判明しました。

于 2012-03-20T14:53:36.293 に答える