0

我只想问如何在 django 中记录我的应用程序发生的所有事情。我没有使用 django 管理员。相反,我创建了一个用于登录的应用程序和一个用于我的博客、评论、喜欢/不喜欢的应用程序。我如何记录所有这些,例如该用户在我的网站上登录的次数以及他/她停留的时间。她/他评论或喜欢多少次。这可能吗?

4

1 回答 1

0

你在这里问了几个不同的问题。

用户登录多少次

最简单的方法是在模型中有一个字段:

login_count = models.PositiveIntegerField(default=0, editable=False)

然后捕获登录信号并增加该字段。

他/她待了多少小时

这很难做到。您可以捕捉到注销信号,但这不是您知道人们离开的唯一方式。也许你可以使用一些花哨的 javascript 来测试它。

您还可以监控每个用户的每次点击并使用它。如果你真的想衡量这个,我会使用 Google Analytics 或其他现有的基于 javascript 的分析引擎。

他们评论/喜欢多少次

这很简单:

class Post(models.Model):
    # ...
    liked_by = models.ManyToManyField(User)

number_of_posts_liked_by_user = Post.objects.filter(liked_by__id=user_id).count()
于 2012-08-17T05:15:25.670 回答