在Django模板中从数据库中计算True或False(1或0)值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Django模板中从数据库中计算True或False(1或0)值相关的知识,希望对你有一定的参考价值。

我正在尝试实现用户模板视图,以显示有多少设备在线以及有多少设备处于脱机状态。对于那个实例,我存储在数据库列'status'中,值为1和0。

我无法弄清楚如何获取这些值并在Django环境中计算它们。我的意思是如果我有4个True(1)值,在模板中它应该看起来像:

你有4个在线设备

如果有4个False(0)值,它应该是这样的,反之亦然:

您有4个离线设备

是否有可能在Django中实现它?我真的是这个领域的新秀,非常感谢一些好的提示......

我的models.py

class Device(models.Model):
    usr = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    ip = models.CharField(max_length=50)
    status = models.IntegerField(default=0)
答案

例如,您可以在视图中执行此操作:

class MyView(View):

    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        queryset = Device.objects.filter(usr=self.request.user)
        context['nb_online'] = queryset.filter(status=1).count()
        context['nb_offline'] = queryset.filter(status=0).count()
        return context

然后,您可以在模板中访问{{ nb_online }}{{ nb_offline }}

以上是关于在Django模板中从数据库中计算True或False(1或0)值的主要内容,如果未能解决你的问题,请参考以下文章

如何在django模板中从给定日期起特定天数后获取日期

如何在 django 模板中从 for 循环中转义一行

Django模板每次都返回True

django ORM模型常用字段字段常用参数

如何使用 javascript(或类似的)在 Django 模板中切片列表项

Django模板 - 如果object.val == true,则设置复选框