this library adds 'created_at', 'updated_at' and 'delete_at' fields like a rail apps in django, also added soft delete method
Project description
this library adds ‘created_at’, ‘updated_at’ and ‘delete_at’ fields like a rail apps in django, also added soft delete method.
install
pip install django-paranoid
How to start
1.- Add to django-loggable in the django apps:
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', ... 'django-paranoid' ... ]
2.- Extends ParanoidModel in the model to use:
from django_paranoid.models import ParanoidModel class MyModel(ParanoidModel): field = models.CharField(max_length=20)
3.- Add to django-admin:
from django_paranoid.admin import ParanoidAdmin class MyModelAdmin(ParanoidAdmin): pass ... admin.site.register(MyModel, MyModelAdmin)
Soft Delete
m = MyModel.objects.last() m.delete()
This only applies soft delete, so the record will remain in the database, but it will not be visible for normal queries:
m = MyModel.objects.last() m
Now the record has a deleted_at field and if do you want show the delete record you could using ‘objects_with_deleted’:
m = MyMode.objects_with_deleted.last() m <MyModel: name> m.deleted_at datetime.datetime(2019, 8, 10, 6, 16, 44, 633727, tzinfo=<UTC>)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
Close
Hashes for django_paranoid-0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 808653aa57c699afbc3990898b32a23128ce383e855aec296b7dd1f1b1c30db2 |
|
MD5 | f058ccabc25866f3ea922a5809706d2a |
|
BLAKE2b-256 | 77426ebd73564aea29377bf9aca096ab17124b8f610ac475fca7e841c822244a |