擅长:python、mysql、java
<p>丹尼尔的回答给出了这种行为的原因,你无法纠正它。在</p>
<p>但是当m2m关系发生变化时,就会发送<code>m2m_changed</code>信号,也许您可以使用它:</p>
<pre><code>from django.db.models import signals
@signals.receiver(signals.m2m_changed, sender=MyModel.m2m_relationship.through)
def handle_m2m_changed(sender, instance, action, **kwargs):
if action == 'post_add':
# Do your check here
</code></pre>
<p>但是请注意,<a href="https://docs.djangoproject.com/en/1.10/ref/signals/#m2m-changed" rel="nofollow noreferrer">docs</a>表示实例“可以是发送方的实例,也可以是ManyToManyField相关的类的实例”。在</p>
<p>我不知道它是如何工作的,但是你可以试试你得到的,然后修改代码。在</p>