我正在尝试通过对象相关外键集中的特定值对Django Admin列表页面进行排序。
具体来说,在下面的代码中,我希望ContentAdmin视图显示按“ Twitter分数”(名称为“
Twitter”的Score对象)排序的所有内容对象的列表。
在django应用中,我具有以下模型:
class Content(models.Model):
body = models.CharField(max_length=564)
title = models.CharField(max_length=64)
class Score(models.Model):
name = models.CharField(max_length=64)
score = models.IntegerField()
content = models.ForeignKey('Content')
在admin.py中,我有以下内容:
class ContentAdmin(admin.ModelAdmin):
list_display = ('title', 'show_twitter_score',)
def show_twitter_score(self, obj):
twitter_score = obj.score_set.get(name='Twitter')
return 'Twitter: ' + str(twitter_score.score)
目标:ContentAdmin的管理面板显示按“ Twitter”分数排序的内容对象
谢谢大家!
我通过扩展类的get_queryset
方法解决了这一问题ContentAdmin
。之后,只需要获取正确的ORM查询即可
def get_queryset(self, request):
qs = super(ContentAdmin, self).get_queryset(request)
return qs.filter(score__name='Twitter').order_by('-score__score')
对于Django 1.5及更早版本,方法为queryset
。
def queryset(self, request):
qs = super(ContentAdmin, self).queryset(request)
return qs.filter(score__name='Twitter').order_by('-score__score')
我有一张这样的桌子: 我想按组排序,然后按count(名称)排序,然后按rand()排序,结果如下: 我写了这个查询,但是如果我在group和rand之间添加count(Name),它会给我一个坏结果
问题内容: 如何根据值对字典进行排序,以便输出为: 当前尝试(排序不正确): 问题答案: 您需要对字典值而不是键进行排序。您可以从字典中创建一个元组数组,按其值对它进行排序,如下所示: Xcode 9•Swift 4 或 Xcode 8•Swift 3 使用按键对字典进行排序 使用字典的键和本地化的比较来对字典进行排序:
问题内容: 我想在键和值上对地图进行排序。首先是关键,然后是价值。例如,这应该是结果; 有人对如何有效地实现这一目标有建议吗?我一直在看到人们使用TreeMap对键进行排序,但是我也需要值。 或者欢迎使用其他对键和值进行排序的方法。 问题答案:
问题内容: 好的,所以我试图在多列中进行全文搜索,就像这样简单: 现在,我想按相关性排序(找到了多少个单词?),我已经可以使用以下方式进行处理: 现在这是我迷路的部分,我想在此列中优先考虑相关性。 我想我可以创建两个相关性列,一个用于,一个用于,但是到那时我将在表中进行三遍相同的搜索,而对于我正在执行的此功能,性能非常重要,因为查询将被联接并与其他表匹配。 因此,我的主要问题是 ,是否有更快的方法
问题内容: 我有一组字典,我想通过每个字典中的“ itemName”键按字母顺序对它们进行排序。如何在Swift中执行此操作? 我想对itemsArray进行排序。 问题答案: 您可以使用的功能: 迅捷 > 3 不是很迅速,但您失去了类型安全性,但这确实起作用。 顺便说一句,您的代码中有很多强制转换,有可能导致应用程序崩溃,您应该考虑改用可选的转换。
问题内容: 我有一个带有数字值的字符串键数组,可用于具有每个标签出现次数的标签列表中,因此: 这是为了我可以按降序显示标签列表,因此: 我可以使用 arsort 通过出色的值进行反向排序,但是我还希望具有相同数字值的所有标签都按字母顺序排序,因此最终结果可以是: 有办法可以做到吗?我猜想 usort 可能是要走的路,但是我看了php.net上的示例,我的眼睛呆呆了!非常感谢!!! 问题答案: 看一
about.ks 的限制 ( 版本情报对话框制作相关 ) 版本情报对话框就是 ( 版本情报对话框制作相关 ) 版本情报对话框范例 ( 版本情报对话框制作相关 ) BGM 使用前预备 ( BGM 的使用 ) 其他 BGM 相关指令 ( BGM 的使用 ) 总之让音乐响起来吧 ( BGM 的使用 ) 渐入・渐出 ( BGM 的使用 ) ClickableMap是什么东东? ( 地图的制作与使用 ) 地
关于 TJS2 ( 关于 TJS2 ) 关于作者和翻译者 ( 关于 TJS2 ) 关于本手册 ( 关于 TJS2 ) Array 类 ( Array 类 ) add ( Array 类 ) assign ( Array 类 ) assignStruct ( Array 类 ) clear ( Array 类 ) count ( Array 类 ) erase ( Array 类 ) find (