我在一个模型中添加了一个新字段,我想用执行特定操作的用户名(在此,由USER验证)填充该字段。
我看到的最简单的方法是从已有此信息的历史中获取它。
例如,从这张图片中,如果用户执行了“更改电子邮件”操作,我将得到用户“ admin”
如何获取对象的历史记录(如django Admin中所示)?
该信息存储在LogEntry
模型中。
from django.contrib.admin.models import LogEntry
它的定义是:
class LogEntry(models.Model):
action_time = models.DateTimeField(_('action time'), auto_now=True)
user = models.ForeignKey(settings.AUTH_USER_MODEL)
content_type = models.ForeignKey(ContentType, blank=True, null=True)
object_id = models.TextField(_('object id'), blank=True, null=True)
object_repr = models.CharField(_('object repr'), max_length=200)
action_flag = models.PositiveSmallIntegerField(_('action flag'))
change_message = models.TextField(_('change message'), blank=True)
objects = LogEntryManager()
源代码中的更多信息
确保以只读模式访问此文件,否则可能会弄乱您的日志历史记录。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句