我在数据库中保留了“size”,“width”,“height”等数字字段。现在,我会在更改列表中显示单位,如“KiB”或“像素”。这可以通过向list_display添加诸如“size_formatted”等可调用对象来轻松实现。但是,这些不再是可排序的。
有没有解决这个限制的方法?
答案 0 :(得分:9)
在此阅读 - ModelAdmin.list_display(阅读了很多内容以达到目的;)
您需要将 admin_order_field 属性添加到您的功能
class YourAdminCLass(admin.ModelAdmin)
[...]
def size_formatted(self, obj):
return "whatever you need"
size_formatted.admin_order_field = 'size'