0

在 admin.py

class PurchaseOrderAdmin(admin.ModelAdmin):
    list_display = ('confirmed', 'po_number')

我想去哪里,只有当“确认”设置为 True 时才会显示 po_number。我怎么能做到这一点?

4

2 回答 2

2

添加到您的班级:

class PurchaseOrder(models.Model):
    ... your fields ...

    def get_po_number(self):
        return self.po_number if self.confirmed else ''
    get_po_number.short_description = 'po_number'

并在 list_display 中从 'po_number' 更改为 'get_po_number'

于 2013-07-30T14:32:00.837 回答
1

该列将始终显示,但如果您想在 false 时显示空白文本或其他内容,您可以尝试以下操作:

list_display = ('confirmed', 'get_po_number')

def get_po_number(obj):
    if obj.confirmed:
        return obj.po_number
    else:
        return 'some text'
get_po_number.short_description = 'po number'
于 2013-07-30T14:26:45.907 回答