zoukankan      html  css  js  c++  java
  • 【AMAD】django-model-utils -- Django model使用的mixin和utils

    动机

    为django model系统提供一些可重用的mixin和utils.

    简介

    django-model-utils1为Django Model提供了下嘛几种分类的utils:

    • Field相关

      • StatusField: 一个CharField的子类,通过特定的Model类属性,来使用django的字段choices功能
      • MonitorField: 一个DateTimeField的子类,可以用来监控该model下的其它字段,在这个字段更新的时候,把monitorfield的值更新为当前时间
      • SplitField: 一个TextField子类,可以把文本划分为两部分,通过自定的切割符或者指定段落数来划分
    • Model相关:

      • TimeFrameModel:一个抽象基类,可以表示时间范围
      • TimeStampedModel: 一个抽象基类,子类可以获得两个自动更新的createdmodified字段
      • StatusModel: 将StatusField, MonitorField, QueryManager聚合使用的一个抽象基类
      • SoftDeletedModel: 加入一个is_removed字段,代表这条数据已经被删除
    • Model Manager相关:

      • InheritanceManager: 这个manager应该放在一个基类中,然后query的时候,返回的结果会自动变成子类的实例
      • JoinManager:JoinManager可以为你当前的queryset创建一个临时表。但是不如使用__inlookup
      • QueryManager: 这应该算一个manager factory。可以通过它来创建你要的自定义manager
      • SoftDeletableManager: 返回is_removed为False的数据
    • 其它功能:

      • Choices: 用于Field.choices的工具类
      • Field Tracker: 可以用来追踪一个model instance的最近改动(save之前)

    个人评分

    类型评分
    实用性 ⭐️⭐️
    易用性 ⭐️⭐️⭐️⭐️⭐️
    有趣性 ⭐️
  • 相关阅读:
    hbase存储优化
    cloudera manager下phoenix的安装
    Cloudera manager的服务安装以及spark升级到2.2
    redis学习总结
    kylin基础概念和基础性能优化
    mycat使用注意事项
    kylin2.0环境搭建
    ETL实践--kettle转到hive
    集成 SOLR 到 TOMCAT 中(傻瓜教程)
    局域网ip扫描
  • 原文地址:https://www.cnblogs.com/thomaszdxsn/p/amaddjangomodelutils--django-model-shi-yong-demixi.html
Copyright © 2011-2022 走看看