最近用了一下audit trail, 发现一个很不爽的缺陷, 就是这个模块实际不可以log在one2many关系中many那一边的变化. 一般的one2many情形比如订单和订单行, 我们一定是把订单行放入订单维护界面, 再通过one2many_list widget来构造成一体化的维护界面, 在这种情况下, 你无论怎样修改订单行, audit trail都不能log订单行表的具体变化, 只有一条在one表(就是订单表)的关系字段上的毫无意义的log. 本人跟踪了一下这个audit trail, 发现他实际就是netsvc['object']的子类, 然后overwrite那个execute方法来实现对object变化记录的功能. 但是其实这个execute方法在上述关系维护过程中, 子表变化不能得到触发, 除非你单独用界面维护这个子表, 然而这没有什么实用性. 不知哪位高人有什么简单的办法? 我在oe的论坛中见有人搞个中间类(继承至osv), 然后你要跟踪的类再从他继承, 觉得还是不爽, 因为现在的audit trail已经很完善了, 就差这个one2many的问题. 有没有更好的办法?