クエリがあります:
items = MyModel.objects.all().order_by('nr')[:10]
そして、より高い番号の10個のアイテムを取得します。ここで、これらの結果を混ぜ合わせる必要があります。どうやってするの?
クエリがあります:
items = MyModel.objects.all().order_by('nr')[:10]
そして、より高い番号の10個のアイテムを取得します。ここで、これらの結果を混ぜ合わせる必要があります。どうやってするの?
スライスが取得されるとクエリを並べ替えることはできないため、別のアプローチを使用してください
import random
items = sorted(MyModel.objects.all().order_by('nr')[:10], key=lambda x: random.random())
OK、プルした後にクエリセットを並べ替えることはできませんが、代わりにこれを行うことができます
import random
items = list(MyModel.objects.all().order_by('nr')[:10])
random.shuffle(items)