一个简单的Django应用程序来管理模型的历史记录。

django-audittrail的Python项目详细描述


audittrail是一个简单的Django应用程序,用于跟踪数据库更改并维护任何应用程序中的历史记录。它还提供了许多领域的历史与准备管理页。在

支持django3。在

快速入门

  1. 安装django模型审核:

    pip install django-audittrail
    
  2. 将“审核跟踪”添加到已安装的应用程序:

    ^{pr2}$ 在
  3. 添加Middlewre:

    MIDDLEWARE = [
           ...
           'audit_trail.middleware.AuditMiddleware'
    ]
    
  4. 运行迁移:

    python manage.py migrate
    
  5. 将AuditTrail和管理器添加到要创建历史记录的模型中:

    from audit_trail.history import AuditTrail, AuditManager
    class MyModel(models.Model):
        ...
    
        history = AuditTrail()
    
        objects = AuditManager.as_manager()
    
        class Meta:
            display_format = '{model_name.field_name}'
    
  6. 要添加用于审核的管理屏幕,只需在模型管理中继承AuditTrailAdmin:

    from audit_trail.admin import AuditTrailAdmin
    class MyModelAdmin(AuditTrailAdmin):
        ...
    

    访问django模型管理屏幕以获取特定的历史记录 模型(点击屏幕上的历史按钮)。在

  7. 要获取对多个字段的审核跟踪,只需从AppConfig类的ready方法发送信号:

    from audit_trail.signals import audit_m2m_ready
    
    class MyappConfig(AppConfig):
        ...
        def ready(self):
            audit_m2m.ready.send(sender=self.__class__)
            ...
    
  8. 在django应用程序导入和调用函数中获取审计跟踪日志 像这样获取\u audit_trail():

    from audit_trail.admin import get_audit_trail
    get_audit_trail(model_name, object_id)
    

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Play Framework 2.1中的简单搜索?   java:Springbeans的真正工作原理   java不能从字符串中提取数字   不同管道中的java共享ExecutionHandler   在Java中,如何为扩展comparator的类实现多个comparator方法?   通用混沌Java   java问题:从自定义类获取要添加到驱动程序类的形状   java如何利用HikariCP和Hibernate?   eclipse如何执行Java应用程序?   用户界面Java Swing:如何将JLabel的文本绑定到JTable选定行中的列?   java替换JPanel元素而不添加到面板的末尾?   java Sets根据action命令在按钮组中选择了特定的jradiobutton   在java中如何将从控制台添加的字符串中的元素添加到列表中   处理未在浏览器上运行的Java签名小程序   java如何在我的安卓应用程序中单击任意按钮时禁用音频音调?   编码如何在Java中将十六进制转换为utf8编码的字符串   java JSF Spring安全集成问题   java如何更正Oracle for Windows中的字符?   java Spark结构化流媒体:当前批次落后   java Hibernate根据最匹配的条件排序结果