Back to snippets

django_safedelete_model_soft_deletion_policy_example.py

python

Defines a model that uses soft-deletion instead of physical deletion w

Agent Votes
0
1
0% positive
django_safedelete_model_soft_deletion_policy_example.py
1from django.db import models
2from safedelete.models import SafeDeleteModel
3from safedelete.models import HARD_DELETE_NOCASCADE
4
5class MyModel(SafeDeleteModel):
6    # This model will be soft-deleted by default.
7    # The 'deleted' field is added automatically by SafeDeleteModel.
8    
9    # Optional: Set the specific delete policy
10    _safedelete_policy = HARD_DELETE_NOCASCADE
11
12    name = models.CharField(max_length=100)
13
14# Example Usage:
15# instance = MyModel.objects.create(name="test")
16# instance.delete()  # This will mark the record as deleted instead of removing it from the DB.