如何知道Django查询中某个对象的顺序

2024-09-30 18:35:41 发布

您现在位置:Python中文网/ 问答频道 /正文

qs1 = QueryModel.objects.all().order_by('?')

obj1 = QueryModel.objects.get(pk=123)

def order_stuff(queryset, obj)
    return print(#obj_order_from_queryset)
order_stuff(qs1, obj1) >>> some ordering number

如何知道某个查询集上某个对象的顺序

例如,如果queryset类似于:

print(qs1) >>> {'pk': 1}, {'pk': 3}, {'pk': 4}, {'pk': 123} ...

以便:

order_stuff(qs1, obj1) >>> 4

如果queryset类似于:

print(qs1) >>> {'pk': 123}, {'pk': 3}, {'pk': 4}, {'pk': 13} ...

以便:

order_stuff(qs1, obj1) >>> 1

如果queryset类似于:

print(qs1) >>> {'pk': 13}, {'pk': 123}, {'pk': 4}, {'pk': 13} ...

以便:

order_stuff(qs1, obj1) >>> 2

如何做到这一点


Tags: objgetbyreturnobjectsdeforderall