django对象之间的操作

时间:2018-01-16 13:11:48

标签: django orm

我正在尝试在2个django对象之间执行操作。你能建议如何继续这个吗?

我有2个对象

class v_Sale(models.Model):
    Key_Variable=models.CharField(max_length=255,primary_key=True)
    Sales = models.CharField(max_length=255)

class v_Threshold(models.Model):
    Key_Variable=models.CharField(max_length=255,primary_key=True)
    Threshold = models.CharField(max_length=255)

我想计算(Sales-Threshold)并将其保存在一个新变量中。

1 个答案:

答案 0 :(得分:-1)

你可以覆盖魔术方法(__add____sub__或你需要的任何东西)并让他们做你需要的。
例如:

class v_Sale(models.Model):
    Key_Variable=models.CharField(max_length=255,primary_key=True)
    Sales = models.CharField(max_length=255)

    def __add__(self, other):
        return eval(self.Sales.value + " + " + other.Threshold.value)


class v_Threshold(models.Model):
    Key_Variable=models.CharField(max_length=255,primary_key=True)
    Threshold = models.CharField(max_length=255)