Ich versuche, einen Identifikator für mein Scheduler-Modell zu erstellen, der von ManyToManyField
dieses Modells abhängt.Das Überschreiben der Speichermethode löst eine Ausnahme aus, wenn das Objekt erstellt wird
Das Problem ist, dass, wenn ich save
Methode überschreiben, das erste Mal (wenn Objekt erstellt wird) verursacht es Probleme. Es sollte zuerst gespeichert werden. Auf der anderen Seite, wenn ich ein post_save
Signal erzeugen, das Problem ist, dass ich zu save
das Modell innerhalb dieses Signal haben, die mit infi
class Scheduler(models.Model):
weekhours = models.ManyToManyField('WeekHour', related_name='schedulers')
identificator = models.TextField(null=True,blank=True)
def save(self,*args,**kwargs):
if self.weekhours.all():
identificator = ','.join([str(x.hour) for x in self.weekhours.all().order_by('hour')])
self.identificator = identificator
super(Scheduler, self).save(*args, **kwargs)
ValueError:
"<Scheduler: None>"
needs to have a value for field "scheduler" before this many-to-many relationship can be used.
Haben Sie irgendwelche Ideen endet?