Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 24, 2010 10:46:29

gonandriy
От:
Зарегистрирован: 2010-06-23
Сообщения: 20
Репутация: +  0  -
Профиль   Отправить e-mail  

ManyToMany Field одним запросом

Можно ли как то извлечь данние из ManyToMany одним запросом, так чтобы запрос формировался с использованием JOIN.
select_related() рабоает только с обьктами ForeinKey. Не хочеться для каждого пункта списка (их около 100) отправлять в базу несколько запросов (для каждого m2m поля)

Здесь об етом написано
http://code.djangoproject.com/ticket/6432

Есть ли в ORM возможность сделать такое без использования raw sql ?
Зарание благодарен!

P. S. Извините если вопрос обсуждался, я не нашол ответа.



Отредактировано (Июнь 24, 2010 10:47:17)

Офлайн

#2 Июнь 26, 2010 13:49:01

romankrv
От:
Зарегистрирован: 2008-05-23
Сообщения: 513
Репутация: +  0  -
Профиль   Отправить e-mail  

ManyToMany Field одним запросом

http://docs.djangoproject.com/en/1.2/topics/db/queries/#many-to-many-relationships

сравни:
e = Entry.objects.get(id=3)
e.authors.all() # Returns all Author objects for this Entry.
e.authors.count()
e.authors.filter(name__contains='John')

a = Author.objects.get(id=5)
a.entry_set.all() # Returns all Entry objects for this Author.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version