【问题标题】:Make boolean values editable in list_display?在 list_display 中使布尔值可编辑?
【发布时间】:2013-08-09 01:51:52
【问题描述】:

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

我的代码如下所示:

# Model
class Task(models.Model):
  ...
  is_finished = models.BooleanField() 
# Admin
list_display = (..., 'is_finished')

我没有在admin.pyreadonly_fields 元组中包含is_finished,所以我很惊讶它默认不可编辑。我做错了什么?

【问题讨论】:

  • 你把is_finished放到list_editable了吗?

标签: django django-admin


【解决方案1】:

ModelAdmin.list_editable 是您所需要的,请参阅其文档 here。下面还有一个例子:

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"

【讨论】:

  • 我应该把状态改变时应该执行的动作固定在哪里? django admin 中的 save_model?
  • list_editable 还在 list_view 底部创建了一个Save 按钮,搜索了将近半个小时。
猜你喜欢
  • 2023-03-17
  • 2012-01-03
  • 2018-06-05
  • 2011-02-05
  • 2012-11-08
  • 2022-06-26
  • 1970-01-01
  • 2017-04-06
  • 1970-01-01
相关资源
最近更新 更多