python - Django runtime error during insertion from admin -
python - Django runtime error during insertion from admin -
i have django model follows:
class m1(models.model): m1code = models.charfield(max_length=25) m1title = models.charfield(max_length=500) m1description = models.charfield(max_length=1000, null=true, blank=true) def __unicode__(self): homecoming self.m1title class m2(mpttmodel): m1 = models.foreignkey(m1) name = models.charfield(max_length=500, unique=false) parent = treeforeignkey('self', null=true, blank=true, related_name='children') def __unicode__(self): homecoming self.name def save(self, *args, **kwargs): degreeroot = m2.objects.get(name=self.m1.m1title) requirement = m2.objects.create(name=self.name, parent=degreeroot, m1=self.m1)
here have 2 models 1 model m2(mptt model) has foreign key m1. whenever create entry m2 admin, want django automatically come in value parent in m2 based on selection of m1.
here have defined save() this. when running in admin, programme going runtime error.
runtimeerror @ /admin/acadprog/m2/add/ maximum recursion depth exceeded while calling python object
where going wrong?
you don't want create new entry, since lead infinite recursion. want set self.parent
, phone call superclass save method:
def save(self, *args, **kwargs): if not self.parent: self.parent = m2.objects.get(name=self.m1.m1title) homecoming super(m2, self).save(*args, **kwargs)
python django django-admin
Comments
Post a Comment