3
在django中使用泛型外鍵的抽象基類和泛型關係有什麼優缺點?在django中抽象基類與泛型關係
抽象基類隱含了一個包含子類的抽象類。這裏有一個例子:
class CommonInfo(models.Model):
...
class Meta:
abstract = True
ordering = ['name']
class Student(CommonInfo):
...
class Meta(CommonInfo.Meta):
db_table = 'student_info'
通用的關係是在一個表上使用通用外鍵與對象ID的實體。這裏是一個例子:
class TaggedItem(models.Model):
tag = models.SlugField()
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_type', 'object_id')
什麼是情況和/或什麼時候應該使用一種解決方案或其他標準?
@Daniel Roseman你對此有何看法?一個或另一個是更好的方法? – Atma