如何防止填充更改列表(模型)

时间:2015-02-22 08:37:10

标签: django django-admin

我是Django的新手,对于一个小项目,我需要打开一些没有任何数据的模型的更改列表。我们如何防止某些模型的初始填充?

1 个答案:

答案 0 :(得分:0)

您必须创建自己的ChangeList子类。例如,以下代码将打开一个空的更改列表,但如果您要搜索名称,则搜索结果将填充该列表:

from django.contrib.admin.views.main import ChangeList

class MyChangeList(ChangeList):

    def get_queryset(self, request):
        queryset = super(MyChangeList, self).get_queryset(request)
        if not request.GET.get('q', ''):
            queryset = queryset.none()
        return queryset

class MyAdmin(admin.ModelAdmin):

    search_fields = ['name']

    def get_changelist1(self, request, **kwargs):
        return MyChangeList