Ich habe modell
class UserPermission(models.Model):
user = models.OneToOneField(User)
user_type = models.ManyToManyField(UserType)
persona = models.ManyToManyField(Persona)
Und Post-Save-Signal
@receiver(post_save, sender=UserPermission)
def post_save_user_permissions(sender, instance, **kwargs)
"""
Depending on selected UserType and Persona for a user, Update some other model
"""
pass
Ich möchte alle aktualisierten Werte der beiden m2m-Felder im Post-Save-Signal. Das Problem hierbei ist jedoch, dass das Signal nach dem Speichern aufgerufen wird, bevor m2m-Felder in db gespeichert werden.
Ich hätte das Signal m2m_changed verwenden können, aber es gibt zwei m2m-Felder, und ich kann diese beiden Signale nicht zuordnen oder verknüpfen
Gibt es sowieso die Möglichkeit, post_save aufzurufen, sobald alle m2m-Felder im Modell in db gespeichert sind?
Antworten:
0 für die Antwort № 1Zwei möglichkeiten:
- versuche post_save an
UserType
- Versuchen Sie, die Zwischentabelle mit zu benennen
through
, mögenthrough="UserPermissionType"
und probiere post_save anUserPermissionType
Ich hoffe, ich habe Ihnen genug Hinweise gegeben, um die Lösung zu finden.