我正在尝试./manage.py dumpdata –natural-foreign –natural-primary我的类,它们是:
class SuperClassManager(Manager):
def get_by_natural_key(self, identifier):
return self.get(identifier=identifier)
class SuperClass(Model):
objects = SuperClassManager()
identifier = CharField(max_length=31, unique=True)
def natural_key(self):
return (self.identifier, )
class Class(SuperClass):
pass
但转储的数据是:
[
{
"model": "app.superclass",
"fields": {
"identifier": "identifier"
}
},
{
"model": "app.class",
"fields": {}
}
]
在这种情况下,无法将Class实例与SuperClass实例相关联.我错过了什么?为什么Class(指向SuperClass)中存在的superclass_ptr不是序列化的,因此可以关联实例?
问题是:我有超过一个子类到我的超类和每个子类的许多实例.所以我需要这种关系才能发生,所以我的灯具才有意义.
最佳答案 这实际上是一个错误,补丁正在建设中:
https://github.com/django/django/pull/7231.所以,没有答案适合这个问题,除了等待补丁.