{ "info": { "author": "Carlos Ganoza Plasencia", "author_email": "cganozap@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "django-paranoid\n===============\n\nthis library adds \u2018created_at\u2019, \u2018updated_at\u2019 and \u2018delete_at\u2019 fields like\na rail apps in django, also added soft delete method.\n\ninstall\n-------\n\n::\n\n pip install django-paranoid\n\nHow to start\n------------\n\n1.- Add to django-paranoid in the django apps:\n\n::\n\n INSTALLED_APPS = [\n 'django.contrib.admin',\n 'django.contrib.auth',\n ...\n 'django_paranoid'\n ...\n ]\n\n2.- Extends ParanoidModel in the model to use:\n\n::\n\n from django_paranoid.models import ParanoidModel\n\n class MyModel(ParanoidModel):\n field = models.CharField(max_length=20)\n\n3.- Add to django-admin:\n\n::\n\n from django_paranoid.admin import ParanoidAdmin\n\n class MyModelAdmin(ParanoidAdmin):\n pass\n ...\n admin.site.register(MyModel, MyModelAdmin)\n\nSoft Delete\n-----------\n\n::\n\n m = MyModel.objects.last()\n m.delete()\n\nThis only applies soft delete, so the record will remain in the\ndatabase, but it will not be visible for normal queries:\n\n::\n\n m = MyModel.objects.last()\n m\n\n\nNow the record has a deleted_at field and if do you want show the delete\nrecord you could using \u2018objects_with_deleted\u2019:\n\n::\n\n m = MyModel.objects_with_deleted.last()\n m\n \n m.deleted_at\n datetime.datetime(2019, 8, 10, 6, 16, 44, 633727, tzinfo=)\n\nHard Delete\n-----------\n\n\nIf do you want to delete record from DB, you only should using True param:\n\n::\n\n m = MyModel.objects.last()\n m.delete(True)\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/drneox/django-paranoid", "keywords": "django created_at updated_at deleted_at fields models django-admin soft delete softdelete", "license": "GPL", "maintainer": "", "maintainer_email": "", "name": "django-paranoid", "package_url": "https://pypi.org/project/django-paranoid/", "platform": "", "project_url": "https://pypi.org/project/django-paranoid/", "project_urls": { "Homepage": "https://github.com/drneox/django-paranoid" }, "release_url": "https://pypi.org/project/django-paranoid/0.8/", "requires_dist": null, "requires_python": "", "summary": "this library adds 'created_at', 'updated_at' and 'delete_at' fields like a rail apps in django, also added soft delete method", "version": "0.8" }, "last_serial": 5659879, "releases": { "0.4": [ { "comment_text": "", "digests": { "md5": "f058ccabc25866f3ea922a5809706d2a", "sha256": "808653aa57c699afbc3990898b32a23128ce383e855aec296b7dd1f1b1c30db2" }, "downloads": -1, "filename": "django_paranoid-0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "f058ccabc25866f3ea922a5809706d2a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17283, "upload_time": "2019-08-10T06:56:22", "url": "https://files.pythonhosted.org/packages/77/42/6ebd73564aea29377bf9aca096ab17124b8f610ac475fca7e841c822244a/django_paranoid-0.4-py3-none-any.whl" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "8730a651e0e809ff547e4b7b8b072954", "sha256": "e2eb5074029c012040fe8e9d8f0f1a4645ddb3d20eace8ec88accb40b5507941" }, "downloads": -1, "filename": "django_paranoid-0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "8730a651e0e809ff547e4b7b8b072954", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17338, "upload_time": "2019-08-10T16:48:34", "url": "https://files.pythonhosted.org/packages/f2/cf/871095ef9cc7e033b44b92a2f1943f7dcdc1551fac878337bed97d71c916/django_paranoid-0.5-py3-none-any.whl" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "5bdfe8cd070da0975661bca662000c3b", "sha256": "f602f38abe4c2552bcb291034d7681a1c69706b8ac40d23fdfe0f54c88afcdd8" }, "downloads": -1, "filename": "django_paranoid-0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "5bdfe8cd070da0975661bca662000c3b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17337, "upload_time": "2019-08-10T16:51:21", "url": "https://files.pythonhosted.org/packages/fb/2f/919a1e82d7528a16bd5fe079d9643225238306bb2dece4c96d82afbaaa9d/django_paranoid-0.6-py3-none-any.whl" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "12c95f820f0cd81bb7c06d1e5d538158", "sha256": "9e61f1525794de823228f3d2d57c33e6597392dcc4c0171af0bbfd72440657b9" }, "downloads": -1, "filename": "django_paranoid-0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "12c95f820f0cd81bb7c06d1e5d538158", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17331, "upload_time": "2019-08-10T17:00:27", "url": "https://files.pythonhosted.org/packages/a3/bb/c7a6d692acdf75ba10f2ea2905a64e4830e815bbf0b853864d900a7c924a/django_paranoid-0.7-py3-none-any.whl" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "f43031854b127f8d02f229ddc282a5bf", "sha256": "1185f318bd61ca3993a2d99fa12751c85f78fc5bdf7a556b831146bd2255abfd" }, "downloads": -1, "filename": "django_paranoid-0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "f43031854b127f8d02f229ddc282a5bf", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17327, "upload_time": "2019-08-10T17:07:52", "url": "https://files.pythonhosted.org/packages/5c/c1/4caeac464774c4f09d52947777a2a0fed63a6e5cb64f5ca1fbc769295318/django_paranoid-0.8-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f43031854b127f8d02f229ddc282a5bf", "sha256": "1185f318bd61ca3993a2d99fa12751c85f78fc5bdf7a556b831146bd2255abfd" }, "downloads": -1, "filename": "django_paranoid-0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "f43031854b127f8d02f229ddc282a5bf", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17327, "upload_time": "2019-08-10T17:07:52", "url": "https://files.pythonhosted.org/packages/5c/c1/4caeac464774c4f09d52947777a2a0fed63a6e5cb64f5ca1fbc769295318/django_paranoid-0.8-py3-none-any.whl" } ] }