我正在寻找存储用户的活动,但我不确定将其存储在哪里。我不认为数据库是一个选择,因为它会非常大。我想知道 Facebook、Dropbox 等网站如何记住特定用户的所有活动。并且它不能存储在会话中,因为这不是特定于会话的而是特定于用户的。
请帮我提出您的建议。
通常你可以使用Django Admin Logs
如果您愿意的话,可以参加这样的活动。
通常 Django 会跟踪管理操作,例如创建、更新或删除现有记录。它具有以下结构:
from django.contrib.admin.models import LogEntry
LogEntry.objects.log_action(
user_id = ...,
content_type_id = ...,
object_id = ...,
object_repr = ....,
change_message = ...,
action_flag = ...
)
我在我的系统中将其用作记录器,并跟踪每个操作。通常,Django 会记录通过管理表单完成的插入、更新或删除操作,而我会记录我的手写视图和表单操作。此外,您还可以使用以下命令捕获用户操作,例如登录/注销signals https://docs.djangoproject.com/en/dev/topics/signals/.
我定义了新的操作标志。 Django 使用 3 个标志:1 用于插入,2 用于更新,3 用于删除。我用我的行动标志扩展了该列表。
正如我所说,使用它的优点是,您不需要处理默认的 Django 管理表单以及使用这些表单执行的任何操作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)