我正在研究在python 2.7上运行的django 1.6项目,我们即将升级到1.7并使用新的migration tools。
迁移系统似乎无法处理python 2.7 and poorly in 3.4 ei中的未绑定方法:
class Foo(models.model):
...
def unbound_method_bar(self):
...
return foobar
文档建议我们将方法从类移到模块。 EI:
def unbound_method_bar(foo):
...
return foobar
class Foo(models.model):
...
这种方法对我们来说并不是很好,因为我们已经添加到模型类中的方法由模板中使用的实用函数组成。
解决这个问题的最佳方法是什么?包装类?是否将实用程序方法动态添加到模型类实例的工厂?还是...?