【问题标题】:how make a conditions in django annotate?如何在 django 中创建条件注释?
【发布时间】:2021-04-05 14:20:00
【问题描述】:

我正在尝试做这样的事情:

c = if x > y return x else return y

内部注释函数

class factura (models.MODEL):
    price = Model.integerField(max_length=50, null=False)
    articles = Models.charField(Max_length=50, default=0, null=False)
    iva = Models.integerField(max_length=50)
    discount = Model.integerField((max_length=50)

factura.objects.annotate(
    total = if total_articles > price return iva else return 

谢谢

【问题讨论】:

    标签: mysql django django-views python-requests django-annotate


    【解决方案1】:

    你可以定义一个model method来比较值:

    
    class factura (models.Model):
        ...
    
        @property
        def check_article(self):
            if int(self.articles) > int(self.price): return 'iva' 
            else: return 
    

    你可以这样做:

        qs=factura.objects.all()
        for instance in qs:
            print(instance.check_article)
    

    【讨论】:

      猜你喜欢
      • 2011-10-23
      • 2015-10-21
      • 2010-10-23
      • 2023-03-27
      • 2011-02-04
      • 2017-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多