Metadata-Version: 2.1
Name: django-soft-remover
Version: 0.3.1
Summary: Abstract Django models for soft removal
Home-page: https://github.com/pikhovkin/django-soft-remover
Author: Sergei Pikhovkin
Author-email: s@pikhovkin.ru
License: MIT
Keywords: django,restore,soft-delete,restore-data,soft-deleting,soft-remove
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Web Environment
Classifier: Framework :: Django :: 3.0
Classifier: Framework :: Django :: 3.1
Classifier: Framework :: Django :: 3.2
Classifier: Framework :: Django :: 4.0
Classifier: Framework :: Django :: 4.1
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.8.*, <4.0.*
Description-Content-Type: text/markdown
License-File: LICENSE

# django-soft-remover

[![GitHub Actions](https://github.com/pikhovkin/django-soft-remover/workflows/build/badge.svg)](https://github.com/pikhovkin/django-soft-remover/actions)
[![PyPI](https://img.shields.io/pypi/v/django-soft-remover.svg)](https://pypi.org/project/django-soft-remover/)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/django-soft-remover.svg)
[![framework - Django](https://img.shields.io/badge/framework-Django-0C3C26.svg)](https://www.djangoproject.com/)
![PyPI - Django Version](https://img.shields.io/pypi/djversions/django-soft-remover.svg)
[![PyPI - License](https://img.shields.io/pypi/l/django-soft-remover)](./LICENSE)

Abstract Django models for soft removal

### Installation

```bash
$ pip install django-soft-remover
```

### Example of use

```python
from django.db import models

from soft_remover.models import SoftRemovableModel, SoftRestorableModel


class ManyUniqueTogetherRem(SoftRemovableModel):
    category = models.CharField(max_length=32)
    name = models.CharField(max_length=32)
    tag = models.CharField(max_length=32)
    value = models.PositiveSmallIntegerField()

    class Meta:
        unique_together = (('category', 'name', 'remver'), ('category', 'tag', 'remver'))


class ManyUniqueTogetherRes(SoftRestorableModel):
    category = models.CharField(max_length=32)
    name = models.CharField(max_length=32)
    tag = models.CharField(max_length=32)
    value = models.PositiveSmallIntegerField()

    class Meta:
        unique_together = (('category', 'name'), ('category', 'tag'))
```

See more examples in [test models](https://github.com/pikhovkin/django-soft-remover/blob/master/soft_remover/tests/models.py).

### License

MIT
