1

我需要类似m2m_changed 的​​信号:

def event_handler(sender, instance, **kwargs):
   pass
m2m_changed.connect(event_handler, sender=MyModel.tags.through)

但我想知道event_handler中instance.tags的先前状态

4

2 回答 2

2

我相信您现在已经找到了解决方案。但是,对于其他参考,您可以通过检查kwargs['action'] == "pre_add"kwargs['action'] == "pre_remove"在任何更新发生之前检查值来做到这一点。您可以在此处找到更多详细信息。

于 2016-04-04T19:24:00.970 回答
0

看看 Django 文档:

https://docs.djangoproject.com/en/dev/ref/signals/#m2m-changed

您应该能够使用信号处理程序的actionpk_set 参数来弄清楚发生了什么。

于 2014-12-30T10:02:10.057 回答