这是一个有趣的问题,我有一个按评分顺序列出的用户列表,如果两个用户具有相同的评分,我有一个随机数,用于确保列表不会总是相同。
目前我通过执行查询来做到这一点:
选择 app_model1.column1、app_model1.colum2、app_model2.column3 从 app_model1 左加入 app_model2 按colum1排序,随机();
但是,当我将一个大型 Django 应用程序重构为几个较小的应用程序时,我感到震惊,我将表的名称硬编码到这个 SQL 中,(并且它破坏了我的单元测试),我真的应该使用本机 ORM 来实现这一点。
如何获得相同的结果,但使用 Django 的 django.contrib.auth.User 和 Profile 模型?