我有一个已向管理员注册的模型。
models.py
class Post(models.Model):
title = models.CharField(max_length=100)
tag = models.CharField(max_length=3)
is_enabled = models.BooleanField(default=False)
现在,我希望管理员只能通过与模型的is_enabled字段进行交互来启用或禁用发布。
admin.py
class PostAdmin(admin.ModelAdmin):
list_display = ['id', 'title', 'tag', 'is_enabled']
list_display_links = None
readonly_fields = ['id', 'title', 'tag']
actions = ['enable_selected', 'disable_selected']
def enable_selected(self,requst,queryset):
queryset.update(is_enabled=True)
def disable_selected(self,requst,queryset):
queryset.update(is_enabled=False)
enable_selected.short_description = "Enable the selected Post"
disable_selected.short_description = "Disable the selected Post"
我已经在下拉列表中成功添加了这些操作,但是我需要以列表中按钮的形式添加此操作,还需要知道当单击按钮以更新is_enabled字段时如何调用函数
答案 0 :(得分:2)
您可以使用 list_editable
list_editable = ['is_enabled']
还记得在list_display(ModelAdmin)中添加已启用