1

如何模拟以下情况?我已经考虑了一段时间,无法确定一种有效的方法来完成我想做的事情。

我有一个有很多答案的问题课。答案可以有多种类型。

class Answer(models.Model):
    question = models.OneToOneField(Question)
    date = models.DateField()

class CharAnswer(Answer):
    data = models.CharField(max_length=256)

class NumberAnswer(Answer):
    data = models.DecimalField(max_digits=10, decimal_places=5)

class TimeAnswer(Answer):
    data = models.TimeField()

class ListAnswer(Answer):
    data = models.CommaSeparatedIntegerField(max_length=256)
    data_type = models.CharField(max_length=64)

我希望能够做类似的事情Answers.objects.all.values_list('data')并能够聚合所有异构data领域。

如果我以次优的方式做事,我愿意进行全面的重新设计。我找了又找,我认为这不是一件容易完成的事情。我应该将所有答案数据存储在一张表中吗?

4

0 回答 0