Wenn ein Künstler im folgenden Modell über den Admin gelöscht wird, werden alle zugehörigen Songs bestätigt und gelöscht. Wenn ich jedoch einen Song über den Admin lösche, möchte ich auch den Künstler löschen, wenn der Künstler in Song keine verwandten Elemente mehr hat. Gibt es dafür eine Modelloption im Admin?Django löscht eine Modellinstanz mit keinem verwandten ForeignKey-Element in einem anderen Modell?
Wie sollte dies in einer benutzerdefinierten Ansicht nicht innerhalb von ModelAdmin getan werden?
class Artist (models.Model):
name = models.CharField(max_length=100)
def __str__(self):
return self.name
class Genre (models.Model):
name = models.CharField(max_length=100)
def __str__(self):
return self.name
class Song (models.Model):
artist = models.ForeignKey(Artist, on_delete=models.CASCADE)
genre = models.ForeignKey(Genre, null=True, blank=True, on_delete=models.SET_NULL)
title = models.CharField(max_length=100)
mix = models.CharField(max_length=100, blank=True)
def __str__(self):
return self.title
möchten Sie vielleicht 'pre_delete' Signal verwenden, um den Künstler zu löschen – karthikr