All Projects → romgar → Django Dirtyfields

romgar / Django Dirtyfields

Licence: other
Tracking dirty fields on a Django model

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to Django Dirtyfields

Django Markdown Editor
Awesome Django Markdown Editor, supported for Bootstrap & Semantic-UI
Stars: ✭ 423 (-11.13%)
Mutual labels:  django
Puput
A Django blog app implemented in Wagtail
Stars: ✭ 450 (-5.46%)
Mutual labels:  django
Yasql
基于Python开发的MySQL WEB版本的工单审核执行和SQL查询平台
Stars: ✭ 463 (-2.73%)
Mutual labels:  django
Django Test Plus
Useful additions to Django's default TestCase
Stars: ✭ 434 (-8.82%)
Mutual labels:  django
Drf Extra Fields
Extra Fields for Django Rest Framework
Stars: ✭ 445 (-6.51%)
Mutual labels:  django
Python Django Learning
🍺 python 和 diango 学习资料,书籍,文章,以及实战项目等等
Stars: ✭ 457 (-3.99%)
Mutual labels:  django
Drf Spectacular
Sane and flexible OpenAPI 3 schema generation for Django REST framework.
Stars: ✭ 414 (-13.03%)
Mutual labels:  django
Django Dbbackup
Management commands to help backup and restore your project database and media files
Stars: ✭ 471 (-1.05%)
Mutual labels:  django
Django Rest Framework
Web APIs for Django. 🎸
Stars: ✭ 22,406 (+4607.14%)
Mutual labels:  django
Django Parler
Easily translate "cheese omelet" into "omelette au fromage".
Stars: ✭ 459 (-3.57%)
Mutual labels:  django
Django Rest Framework Api Guide
Django REST framework API 指南
Stars: ✭ 437 (-8.19%)
Mutual labels:  django
Raveberry
A multi-user music server with a focus on participation
Stars: ✭ 442 (-7.14%)
Mutual labels:  django
Cookiecutter Django Vue
Cookiecutter Django Vue is a template for Django-Vue projects.
Stars: ✭ 462 (-2.94%)
Mutual labels:  django
Django Heroku
A Django library for Heroku apps.
Stars: ✭ 428 (-10.08%)
Mutual labels:  django
Django Role Permissions
A django app for role based permissions.
Stars: ✭ 465 (-2.31%)
Mutual labels:  django
Django Request
django-request is a statistics module for django. It stores requests in a database for admins to see, it can also be used to get statistics on who is online etc.
Stars: ✭ 419 (-11.97%)
Mutual labels:  django
Django Machina
A Django forum engine for building powerful community driven websites.
Stars: ✭ 454 (-4.62%)
Mutual labels:  django
Django Ordered Model
Get your Django models in order
Stars: ✭ 476 (+0%)
Mutual labels:  django
Knboard
Kanban boards with React & Django.
Stars: ✭ 470 (-1.26%)
Mutual labels:  django
Django Nested Admin
Django admin classes that allow for nested inlines
Stars: ✭ 463 (-2.73%)
Mutual labels:  django

=================== Django Dirty Fields

.. image:: https://badges.gitter.im/Join%20Chat.svg :alt: Join the chat at https://gitter.im/romgar/django-dirtyfields :target: https://gitter.im/romgar/django-dirtyfields?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge .. image:: https://img.shields.io/pypi/v/django-dirtyfields.svg :target: https://pypi.org/project/django-dirtyfields/ .. image:: https://travis-ci.org/romgar/django-dirtyfields.svg?branch=develop :target: https://travis-ci.org/romgar/django-dirtyfields?branch=develop .. image:: https://coveralls.io/repos/romgar/django-dirtyfields/badge.svg?branch=develop :target: https://coveralls.io/r/romgar/django-dirtyfields?branch=develop .. image:: https://readthedocs.org/projects/django-dirtyfields/badge/?version=develop :target: https://django-dirtyfields.readthedocs.org/en/develop/?badge=develop

Tracking dirty fields on a Django model instance. Dirty means that field in-memory and database values are different.

This package is compatible and tested with the following Python & Django versions:

+---------------+------------------------------------------------------+ | Django | Python | +===============+======================================================+ | 1.11 | 3.6, 3.7 (as of 1.11.17) | +---------------+------------------------------------------------------+ | 2.0, 2.1 | 3.6, 3.7 | +---------------+------------------------------------------------------+ | 2.2 | 3.6, 3.7, 3.8 (as of 2.2.8), 3.9 (as of 2.2.17) | +---------------+------------------------------------------------------+ | 3.0 | 3.6, 3.7, 3.8, 3.9 (as of 3.0.11) | +---------------+------------------------------------------------------+ | 3.1 | 3.6, 3.7, 3.8, 3.9 (as of 3.1.3) | +---------------+------------------------------------------------------+

Install

.. code-block:: bash

$ pip install django-dirtyfields

Usage

To use django-dirtyfields, you need to:

  • Inherit from DirtyFieldsMixin in the Django model you want to track.

    .. code-block:: python

    from django.db import models from dirtyfields import DirtyFieldsMixin

    class ModelTest(DirtyFieldsMixin, models.Model): """A simple test model to test dirty fields mixin with""" boolean = models.BooleanField(default=True) characters = models.CharField(blank=True, max_length=80)

  • Use one of these 2 functions on a model instance to know if this instance is dirty, and get the dirty fields:

    • is_dirty()
    • get_dirty_fields()

Example

.. code-block:: python

>>> from tests.models import ModelTest
>>> tm = ModelTest.objects.create(boolean=True,characters="testing")
>>> tm.is_dirty()
False
>>> tm.get_dirty_fields()
{}

>>> tm.boolean = False

>>> tm.is_dirty()
True
>>> tm.get_dirty_fields()
{'boolean': True}

Consult the full documentation <https://django-dirtyfields.readthedocs.org/en/develop/>_ for more informations.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].