是否有可能实现动态的ForeignKey或其他方式来实现这一要求?

时间:2018-01-08 03:56:16

标签: python django

是否有可能实现动态的ForeignKey?

我有一个Task类,用于服务器模型,IP模型,WorkOrder模型等。

class =Task(models.Model):
    """
    Task for Server, IP, WorkOrder ...
    """
    name = models.CharField(max_length=16)
    desc = models.CharField(max_length=1024) 
    belong_to = models.ForeignKey(to=`There should be be `Server, IP, WorkOrder``)
    ....

我的要求是设计一个Task类,然后与其中一个模型相关,但在Django中,看起来是不可能的。

如果这不可能,还有其他方法可以实现吗?

否则我会为每个模型编写任务。

1 个答案:

答案 0 :(得分:0)

如果您的Task始终与其他资产完全相关 - ServerIP等 - 并且每个其他资产可能有多个Task相关联,我认为{ {3}}是唯一内置的支持。使用它们有一些缺点,因为现在框架必须解析关系类型以确定引用的外部记录,但它可能比多个Task类更容易。