?

Log in

No account? Create an account
 
 
15 Сентябрь 2011 @ 21:58
Выбор записей с четными идентификаторами.  
Всем доброго времени суток!
Имеется давольно тупая задача: используя ORM django выбрать все записи с четными идентификаторами.

Ни документация django, ни вселенский разум так и не пролили свет на решение этой проблемы.
 
 
 
Jesus FUC*ING Christravli on Сентябрь, 21, 2011 17:20 (UTC)
Model.objects.extra(select={'mod': 'id % 2'}).filter(mod=0) ?
odlboodlbo on Сентябрь, 23, 2011 19:31 (UTC)
Спасибо, так и сделал давно. Забыл упомянуть в теме.
отражение жизни в экране монитораrainman_rocks on Сентябрь, 22, 2011 00:11 (UTC)
кроме уже посоветованного способа есть objects.raw()

А лучше всего - не валять дурака и создать дополнительное поле, куда занести этот самый id % 2

odlboodlbo on Сентябрь, 23, 2011 19:32 (UTC)
Малость не подойдёт вариант с дополнительным полем. Но всё равно спасибо за ваш ответ.
lumixograflumixograf on Сентябрь, 22, 2011 03:37 (UTC)
Доступ к значению поля может помочь..
from django.db.models import F
obj2 = Obj.objects.filter(id=(F('id')/2)*2)
Поделив на два нечётное целое число и умножив на два, мы не получим то же самое число, поделив и умножив чётное - получим
odlboodlbo on Сентябрь, 23, 2011 19:30 (UTC)
Всем спасибо. С проблемой давно разобрался. Забыл написать.