刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!
解答思路:
在Django中实现ORM表中添加数据时同时创建一条日志记录,可以通过信号(Signals)或者重写模型的保存方法(override save method)来实现。这里我们介绍通过重写模型的保存方法来实现。
最优回答:
from django.db import models
class LogModel(models.Model):
action = models.CharField(max_length=255) # 操作类型,例如'添加'
table_name = models.CharField(max.length=255) # 表名
timestamp = models.DateTimeField(auto_now_add=True) # 时间戳
# 其他需要的字段...
save
方法,在数据保存的同时创建日志记录。from django.db import models
from . import LogModel
class MyModel(models.Model):
# 模型字段...
def save(self, *args, **kwargs):
# 先调用原始的save方法保存当前数据
super().save(*args, **kwargs)
# 创建日志记录
LogModel.objects.create(
action='添加', # 根据实际情况填写操作类型
table_name=self._meta.db_table, # 获取当前模型的表名
)
本文链接:在Django框架中,如何实现当向ORM数据库表中添加数据时自动生成一条日志记录?
版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!