2

単純な状況、モデル:

class Manufacturer(models.Model):
    name = models.CharField(max_length=200)
    slug = models.SlugField(max_length=200, null=True)
    active = models.BooleanField()
    ...

そしてModelAdmin:

class ManufacturerAdmin(admin.ModelAdmin):
    search_fields = ['name']
    list_filter = ['assortment_type', 'active']
    ordering = ('priority',)
    prepopulated_fields = {'slug':('name',),}
    list_display = ('name', 'active')

Still in Admin active 列は、アイコンではなく True/False として表示されます。メソッドを作成して Boolean = True 属性を設定することはできますが、列の並べ替え機能が失われました。ここで何かが欠けていることは明らかです。

4

1 に答える 1

5

カスタム メソッドを作成admin_order_fieldし、フィールド名にbooleanTrue として設定します。

def my_function(self):
    # your stuff goes here
my_function.boolean = True
my_function.admin_order_field = 'active'

これでソート可能になります(doc

于 2012-11-20T01:44:10.537 に答える