我正在尝试实现用户模板视图,以显示有多少设备在线以及有多少设备处于脱机状态。对于那个实例,我存储在数据库列'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 }}
。