【发布时间】:2014-10-24 19:41:42
【问题描述】:
我需要能够从 Django 模型中获取每个(例如)第 100 个 id。到目前为止,我发现这样做的唯一方法如下:
ids = MyModel.objects.values_list('id', flat=True)[::100]
有没有更好的方法来做到这一点?
【问题讨论】:
我需要能够从 Django 模型中获取每个(例如)第 100 个 id。到目前为止,我发现这样做的唯一方法如下:
ids = MyModel.objects.values_list('id', flat=True)[::100]
有没有更好的方法来做到这一点?
【问题讨论】:
您可以使用where 和modulo 运算符。
MyModel.objects.extra(where=["id %% 100 == 0"]).values_list('id', flat=True)
双 % 是因为我们需要对其进行转义,因为它是参数的保留字符。
【讨论】: