Hi, this causes a regression in Django and I'm not sure if Django or cpython is at fault. For a simple model that uses super() rather than super(Model self) in save():
from django.db import models
class Model(models.Model):
def save(self, *args, **kwargs):
super().save(*args, **kwargs)
>>> Model().save()
Traceback (most recent call last):
File "/home/tim/code/mysite/model/tests.py", line 8, in test
Model().save()
File "/home/tim/code/mysite/model/models.py", line 5, in save
super().save(*args, **kwargs)
RuntimeError: super(): empty __class__ cell
django.db.models.Model does some things with metaclasses which is likely related to the root cause:
https://github.com/django/django/blob/6d1394182d8c4c02598e0cf47f42a5e86706411f/django/db/models/base.py
If someone could provide guidance about what the issue might be, I'm happy to provide more details or to debug this further.
Thank you! |