由于某种原因,我不知道为什么计数器仅在第一次获取URL时或服务器重新启动时才更新(或者当我只是保存我的代码而本地服务器正在更新时),而在此之后不再更新。
制作一个简单的计数器类
models.py
class HitCount(models.Model):
visits = models.IntegerField(default=0)
还有一个简单的更新,当应该从react获取视图时
views.py
class HitCountViewSet(viewsets.ModelViewSet):
HitCount.objects.filter(pk=1).update(visits=F('visits') + 1)
queryset = HitCount.objects.all()
serializer_class = HitCountSerializer
另外,如果有的话,还有我的serializer.py
class HitCountSerializer(serializers.ModelSerializer):
class Meta:
model = HitCount
fields = ('visits',)
我的目标只是在获取网址时更新计数器,然后出于显示目的获取计数数据。
答案 0 :(得分:0)
other thing
然后尝试询问GET-class HitCountViewSet(viewsets.ModelViewSet):
queryset = HitCount.objects.all()
serializer_class = HitCountSerializer
def retrieve(self, request, *args, **kwargs):
instance = self.get_object()
HitCount.objects.filter(pk=instance.id).update(visits=F('visits') + 1)
serializer = self.get_serializer(instance)
return Response(serializer.data)
http://your.domain_or_ip/hitcount/hitcount_id/
这样的代码在初始化时只会被调用一次。