在list_display中使布尔值可编辑?

Ric*_*ard 24 django django-admin

我想在我的Django管理员列表显示中编辑一个布尔字段.相反,我有不可编辑的图标:

在此输入图像描述

我的代码看起来像这样:

# Model
class Task(models.Model):
  ...
  is_finished = models.BooleanField() 
# Admin
list_display = (..., 'is_finished')
Run Code Online (Sandbox Code Playgroud)

我没有包含is_finishedreadonly_fields元组中admin.py,所以我很惊讶默认情况下它是不可编辑的.我究竟做错了什么?

小智 37

ModelAdmin.list_editable是你需要的,请看这里的文档.下面你还有一个例子:

class TaskAdmin(models.ModelAdmin):
    list_display = (..., 'is_finished')
    list_editable = ('is_finished',) # this MUST only contain fields that also are in "list_display"
    #list_display_links = ('foo', 'bar') # this MUST NOT contain a field in common with "list_editable"
Run Code Online (Sandbox Code Playgroud)

  • `list_editable` 还在 list_view 的底部创建了一个 `Save` 按钮,搜索了将近半个小时。 (3认同)