保存後に Django モデルからデータを操作する必要がありますが、ManyToManyField にもアクセスする必要があります。
これが私がやりたいことです:
class Lab(Model):
institute = ManyToManyField(Institute)
def post_save_lab(sender, instance, created, *args, **kwargs):
if not instance.institute.all():
# Data processing...
post_save.connect(post_save_lab, sender=Lab)
問題は、その時点で instance.institute.all() が常に空であるということです...ラボに研究所があるかどうかをどうやって知ることができますか?
ManyToMany 関係に要素が存在しない場合、データ処理を実行する必要があるため、信号 m2m_changed では問題が解決しないことを指定します。したがって、m2m_changed は呼び出されません。
ありがとう!