Django models 布尔字段中的If和else语句

Django models 布尔字段中的If和else语句,django-models,django-views,django-templates,Django Models,Django Views,Django Templates,我的问题对我来说似乎很棘手,但我相信有人能找到解决办法。我有一个布尔字段,但我想添加一个功能,在其中单击布尔值(True)时,我可以实现一个{%if%}和{%else%},如果布尔字段为True,则可以将特定金额添加到原始金额。我的代码如下,以便正确理解 class OrderItem(models.Model): user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) ordere

我的问题对我来说似乎很棘手,但我相信有人能找到解决办法。我有一个布尔字段,但我想添加一个功能,在其中单击布尔值(True)时,我可以实现一个
{%if%}
{%else%}
,如果布尔字段为True,则可以将特定金额添加到原始金额。我的代码如下,以便正确理解

class OrderItem(models.Model):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    ordered = models.BooleanField(default=False)
    item = models.ForeignKey(Item, on_delete=models.CASCADE)
    paper = models.BooleanField(default=False, blank=True)
     

    def get_final_price(self):
        if self.item.discount_price:
            return self.get_total_discount_price()
        return self.get_total_item_price()

    def coverframe(self):
        return get_final_price() + 3000
    

class Order(models.Model):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    item = models.ManyToManyField(OrderItem)
    
    def __str__(self):
        return self.user.username

    def get_total_everything(self):
        total = 0
        for order_item in self.item.all():
            total += order_item.get_final_price() 
        return total

        def get_total_everything_cover_paper(self):
        total = 0
        for order_item in self.item.all():
            total += order_item.coverframe() 
        return total



Views
class OrderSummary(LoginRequiredMixin, View):
    def get(self, *args, **kwargs):
        try:
            ******
            context = {'object':order}
            ??????
        
        except ObjectDoesNotExist:
            messages.error(self.request, "No active order yet, sorry!!!")
            return redirect('/')


and my html
{% if object.item.paper_frame %}
  <tr>
  <td><b>{{object.get_total_everything_cover_paper}}</b></td>
</tr>
<tr>
  {% else %}
  {% if object.get_total_everything %}
  <tr>
  <td><b>N {{object.get_total_everything}}</b></td>
</tr>
<tr>
{% endif %}
{% endif %}
类OrderItem(models.Model):
user=models.ForeignKey(settings.AUTH\u user\u MODEL,on\u delete=models.CASCADE)
ordered=models.BooleanField(默认值=False)
item=models.ForeignKey(item,on_delete=models.CASCADE)
纸张=模型.布尔字段(默认值=假,空白值=真)
def获取最终价格(自身):
如果self.item.discount\u价格:
返回self.get\总折扣\价格()
返回self.get_总计_项目_价格()
def盖架(自):
返回获取最终价格()+3000
类顺序(models.Model):
user=models.ForeignKey(settings.AUTH\u user\u MODEL,on\u delete=models.CASCADE)
item=models.ManyToManyField(OrderItem)
定义(自我):
返回self.user.username
def获取所有内容(自我):
总数=0
对于self.item.all()中的订单项:
合计+=订单商品。获取最终价格()
返回总数
def获取\u总计\u所有内容\u封面纸(自):
总数=0
对于self.item.all()中的订单项:
总计+=订单项目。封面框()
返回总数
意见
类OrderSummary(LoginRequiredMixin,视图):
def get(自身、*args、**kwargs):
尝试:
******
上下文={'object':顺序}
??????
除ObjectDoesNotExist外:
messages.error(self.request,“还没有有效订单,抱歉!!!”)
返回重定向(“/”)
还有我的html
{%if object.item.paper\u frame%}
{{object.get_total_everything_cover_paper}
{%else%}
{%if object.get_total_everything%}
N{{object.get_total_everything}
{%endif%}
{%endif%}