Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 11, 2013 11:18:34

ilnur
От: Казань
Зарегистрирован: 2009-01-06
Сообщения: 524
Репутация: +  22  -
Профиль   Отправить e-mail  

выборка через values()

class Category(models.Model):
    name = models.CharField(...)
class Post = (models.Model):
    name = models.CharField(...)
    category = models.ForeqignKey(Category, null=True, blank=True)
all_posts = Post.objects.values('name', 'category__name')

в all_posts не попадут записи, у которых category=None.
Как это можно обойти?

мне надо одним запросом получить все записи именно через values. потому что там дикты. И они работают очень быстро.

выше просто привел пример для наглядности. В реальной задаче делается выборка записей более 500000.
Пробовал через select_related().only(…..) но там возвращается не словарь. И питон долго работает с записями.

А когда делаю через values() разница почти 20-30 раз. Но некоторые записи не попадают.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version