Django模型实例的简单审计。
项目描述
此应用程序旨在审计模型的更改并维护其日志。
安装
您可以通过两种方式安装django-simple-audit:使用pip或通过setup.py install。
$ pip install django-simple-audit
然后修改您的settings.py文件,在INSTALLED_APPS中添加包simple_audit,并在MIDDLEWARE_CLASSES中添加simple_audit.middleware.TrackingRequestOnThreadLocalMiddleware
INSTALLED_APPS = [
'...',
'simple_audit',
]
MIDDLEWARE_CLASSES = [
'...',
'simple_audit.middleware.TrackingRequestOnThreadLocalMiddleware',
]
使用方法
跟踪模型变更
要审计模型,您需要导入simple_audit并注册要审计的模型。
from django.db import models
import simple_audit
class Message(models.Model):
title = models.CharField(max_length=50, blank=False)
text = models.TextField(blank=False)
def __unicode__(self):
return self.text
class Owner(models.Model):
name = models.CharField(max_length=50, blank=False)
def __unicode__(self):
return self.name
class VirtualMachine(models.Model):
name = models.CharField(max_length=50, blank=False)
cpus = models.IntegerField()
owner = models.ForeignKey(Owner)
so = models.CharField(max_length=100, blank=False)
started = models.BooleanField()
def __unicode__(self):
return self.name
simple_audit.register(Message, Owner, VirtualMachine)
高级使用(不使用httprequest或我们的中间件)
您可以在没有http请求的情况下使用django-simple-audit(例如在管理命令中)。在这种情况下,线程上下文中没有http请求。为了确保收集单个AuditRequest上的所有修改,您可以指定它
AuditRequest.new_request(path, user, ip)
try:
# my code... in same thread
finally:
AuditRequest.cleanup_request()
跟踪m2m字段变更
跟踪m2m字段变更仍然是实验性的,但您可以使用以下变量启用它
DJANGO_SIMPLE_AUDIT_M2M_FIELDS = True
您需要在您的django设置中至少设置一个缓存后端,否则之前的设置将被设置为False。
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'LOCATION': 'unique',
'TIMEOUT': 300,
}
}
依赖关系
Django >= 1.8
django.contrib.contenttypes已安装到INSTALLED_APPS中
待办事项
改进测试
变更日志
- 0.2.2
添加对Django 1.9的支持。
- 0.2.1
删除South,要求Django 1.8或更高版本。
- 0.2.0
使用South进行迁移
- 0.1.12
创建了一些简单的测试
启用多对多字段跟踪(见使用方法)
项目详情
下载文件
下载您平台上的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
django-simple-audit-gizmag-0.2.2.tar.gz (22.3 kB 查看哈希值)
构建分发
关闭
哈希值 for django_simple_audit_gizmag-0.2.2-py2-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 119544e5b981a9580c8dbad86b3a1f22cf8ee5c8c16fdaffe604bd92167e5524 |
|
MD5 | 3576eb5b12a3d13267799c05d1f0bc0c |
|
BLAKE2b-256 | dc4865f99f1084228efad0b92998d05e48259de6ee84ebf41f39b4988a25d918 |