【发布时间】:2020-03-28 01:02:28
【问题描述】:
我正在构建一个 Django 应用程序,我想覆盖默认添加到多对多字段行为。假设我想在创建 2 个对象之间的关系时打印出一些东西。
class Foo(Model):
...
class Bar(Model):
foos = ManyToManyField(Foo)
是否有任何地方可以覆盖多对多关系经理类的 add 方法?类似的东西
class ???:
def add(self, obj, *args, **kwargs):
super().add(obj, *args, **kwargs)
print(f"{obj} added")
预期的输出应该是
>>> foo1 = Foo.objects.create(...)
>>> bar = Bar.objects.create()
>>> bar.foos.add(foo1)
foo1 added
谢谢大家。
【问题讨论】: