繁体   English   中英

Django管理员,仅显示所需的模型

[英]Django admin, show only needed models

我是django的新手,我只需要在admin中显示状态为'pending'的那些模型。

ITEM_STATUSES = (
    ('pending', _('Waiting approval')),
    ('approved', _('Approved')),
    ('declined', _('Declined'))
)

class Item(models.Model):
    title = models.CharField(max_length=64)
    ...
    status = models.CharField(max_length=32, choices=ITEM_STATUSES)
    ...

class ItemAdmin(admin.ModelAdmin):
  pass

admin.site.register(Item, ItemAdmin)

重写get_queryset()对于django的> = 1.6)你的方法ModelAdmin

get_queryset上的get_queryset方法返回可以由管理站点编辑的所有模型实例的QuerySet。

class ItemAdmin(admin.ModelAdmin):
    def get_queryset(self, request):
        qs = super(ItemAdmin, self).get_queryset(request)
        return qs.filter(status='pending')

仅供参考,对于Django <= 1.5,请改用queryset()方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM