自定义变更列表表单和列表可在Django Admin中编辑

2024-09-29 21:38:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在Django管理列表视图中引入自定义可编辑字段。我想做一些和这个非常相似的事情。在

我面临的问题是Django要求来自list_editable的所有字段都必须是模型中的字段。在

class SomeModel(Model):
   ...

class SomeModelChangeListForm(forms.ModelForm):
    class Meta:
        model = SomeModel
    name = forms.CharField()

class SomeModelAdmin(admin.ModelAdmin):
    def get_changelist_form(self, request, **kwargs):
        return SomeModelForm

    list_display = ['name']
    list_editable = ['name']

所以如果模型上没有name字段,它就不能工作,验证就会失败。在

编辑:我得到的特定验证错误:

django.core.exceptions.ImproperlyConfigured: 'SomeModelAdmin.list_editable' refers to a field, 'name', not defined on SomeModel.

您可以在源代码中看到这个地方:Django sources。在


Tags: djangoname模型视图编辑列表modelforms
2条回答

前几天我碰到这个。结果只是有一个变量或一个方法

def name(self):
   pass

让这一切消失。在

为@kagronick的回答添加了一些澄清

添加到SomeModelAdmin

def name(self, obj=None):
    pass

相关问题 更多 >

    热门问题