“django-admin-related”防止您删除具有相关项的模型
django-admin-related的Python项目详细描述
Django管理相关
此项目使用户无法删除包含Django Admin关联的其他对象的对象。
obs:此项目仅在django admin中有效
安装:
pip install django-admin-related
用法:
在settings.py中添加到已安装的应用程序:
INSTALLED_APPS = [ ... 'django_admin_related', ... ]
为模型创建管理:
from django.contrib.admin import register from django_admin_related.admin import VerifyRelated @register(YouModel) class YouModelAdmin(VerifyRelated): """ from best performance use `verify_related_fields` because this check all fields is a point to other model and `verify_related_fields` is a direct way. """ pass
测试:
try this: create a simple model, and simple related model, and exclude a first model.
高级:
- 如果需要指定关系,可以执行以下操作:
from django.contrib.admin import register from django_admin_related.admin import VerifyRelated @register(YouModel) class YouModelAdmin(VerifyRelated): """ from best performance use `verify_related_fields` because this check all fields is a point to other model and `verify_related_fields` is a direct way. """ verify_related_fields = ('field', 'field2', ...)