Ich möchte einige Informationen über entfernte Benutzer (wie Benutzername) in Forum Posts zu zeigen. Wie kann ich das erreichen?Django erstellt einen "Sentinel" Benutzer auf löschen
Bisher habe ich dies:
class Post(models.Model):
(...)
creator = models.ForeignKey(User, blank=True, null=True,on_delete=models.SET(get_sentinel_user))
@receiver(pre_delete, sender=User, dispatch_uid='user_delete_signal')
def create_sentinel_user(sender, instance, using, **kwargs):
SentinelUser.objects.get_or_create(\
username=instance.username+" (left)")[0]
def get_sentinel_user():
return SentinelUser.objects.latest('id')
aber wenn ich das verwenden in Admin, ist es nicht, weil aus irgendeinem Grund get_sentinel_user früher als pre_delete ausgeführt funktioniert und dafür die Sentinel-Benutzer noch nicht existiert, .
Zum einen Du SentinelUsers im create_sentinel_user und SentinelUser im get tun. – Fred
Ich bin mir dessen bewusst. Es ist so, weil ich kein Argument von den Modellen on_delete Funktionsaufruf übergeben kann, also muss ich sie trennen. – Stefan
Ich sehe jetzt, das ist ein Tippfehler. Der Vorgang wird ausgeführt, es ist kein Fehler aufgetreten. Fest. – Stefan