代码之家  ›  专栏  ›  技术社区  ›  Vladyslav Oliinyk

Django对文章的看法

  •  0
  • Vladyslav Oliinyk  · 技术社区  · 8 年前

    如何计算文章的独特视图数?

    class Article(models.Model):
        title = models.CharField(max_length = 300)
        post = RichTextUploadingField(blank=True, default='')
        date = models.DateTimeField(auto_now=True)
        views = models.IntegerField(default='0')
    
    
    
        def __str__(self):
            return "%s" % (self.title)
    
    1 回复  |  直到 8 年前
        1
  •  0
  •   Druhin Bala    8 年前

    您可能希望在这样的模型中存储独特的点击:

    from django.contrib.auth.models import User
    
    
    class HitCount(models.Model):
        article = models.ForeignKey(Article, on_delete=models.CASCADE)
        user = models.ForeignKey(User, on_delete=models.CASCADE)
        hits = models.PositiveIntegerField()
    

    然后要获取统计数据,您可以执行以下操作:

    all_hits_by_specific_user = Hitcount.objects.filter(article=somearticle,
                                                        user=someuser).first().hits
    
    total_unique_hits = HitCount.objects.count()