Django Admin Cookbook-19如何在管理后台中一个模型只允许创建一个对象

19.如何在管理后台中一个模型只允许创建一个对象?

假设UMSRA后台只能创建一个Category分类。他们希望每个Entity对象都属于同一个Category分类。

实现方式如下:

MAX_OBJECTS = 1
def has_add_permission(self, request):
    if self.model.objects.count() >= MAX_OBJECTS:
        return False
    return super().has_add_permission(request)

一旦创建了一个对象,添加按钮便会隐藏。你可以MAX_OBJECTS为设置为其他值,以允许最创建指定数量的对象。

返回目录

相关推荐