Django admin:格式化列表中的字段,但保持可排序?

发布于 2024-08-13 16:38:45 字数 156 浏览 3 评论 0原文

我在数据库中保留“尺寸”、“宽度”、“高度”等数字字段。现在,当在更改列表中显示它们时,我会将“KiB”或“像素”等单位附加到它们上。通过向 list_display 添加“size_formatted”等可调用对象可以轻松实现这一点。但是,这些不再可排序。

有办法绕过这个限制吗?

I keep numeric fields like "size", "width", "height" in my database. Now I would attach units like "KiB" or "pixels" to them when showing them in the change list. This could easily be achieved by adding callables such as "size_formatted" etc to list_display. However, these are no longer sortable.

Is there a way around this limitation?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

简美 2024-08-20 16:38:45

阅读此处 - ModelAdmin.list_display< /a> (阅读很多内容才能明白要点;))

您需要将 admin_order_field 属性添加到您的函数中

class YourAdminCLass(admin.ModelAdmin)
   [...]
   def size_formatted(self, obj):
          return "whatever you need"
   size_formatted.admin_order_field = 'size'

Read here - ModelAdmin.list_display (read a lot to get to the point ;) )

you need to add admin_order_field attribute to your function

class YourAdminCLass(admin.ModelAdmin)
   [...]
   def size_formatted(self, obj):
          return "whatever you need"
   size_formatted.admin_order_field = 'size'
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文