python - 如何按django中的计算值排序

标签 python django web-applications sorting django-models

嘿,我想在 Django 中根据计算值对对象进行排序...我该怎么做?

这是一个基于堆栈溢出的用户配置文件模型示例,它解释了我的困境:

class Profile(models.Model):
    user = models.ForeignKey(User)

    def get_reputation():
        ... 
        return reputation
    reputation = property(get_reputation)

所以,假设我想按声誉对用户进行排序。我怎么做?我知道你不能只这样做:

Profile.objects.order_by("-reputation")

感谢大家的帮助:)

最佳答案

由于您的计算代码仅存在于 Python 中,因此您也必须在 Python 中执行排序:

sorted (Profile.objects.all (), key = lambda p: p.reputation)

关于python - 如何按django中的计算值排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/930865/

相关文章:

python - 如何将 PIL 图像绘制到 DearPyGui Canvas 上?

python - 代码完成时发出声音警报

Python 换行符\n 在 jupyter 笔记本中不起作用

Django 调试工具栏显示,但面板返回 404

version-control - 您如何使用托管内容对应用程序进行 CM

javascript - 单页 JavaScript Web 应用程序的架构?

javascript - AFrame - 是否可以用没有黑色边框的自定义图像替换标记?

python - django表单queryset多个相同字段过滤器

javascript - 如何从 Ajax POST 解析 Django View 中的 JSON 对象

python - Django 的 HttpRequest.META 字典是如何填充的?