Django Model - ManyToManyField

12 views
Skip to first unread message

mth...@gmail.com

unread,
Nov 27, 2011, 2:09:10 PM11/27/11
to djan...@googlegroups.com
Bir model s�n�f�m�zda yazilar ad�nda bir ManyToManyField s�n�f� var
diyelim. Olu�turdu�umuz modelle yazilar > 0 olacak �ekilde nas�l sorgu
yapabiliriz? �rne�in Model.objects.get(yazi="Falanca") �eklinde bir
liste d�nd�r�yoruz. Burada de�er �undan b�y�kt�r gibi bir �eyi nas�l
kullanabiliriz?

şahin mersin

unread,
Nov 28, 2011, 5:14:56 AM11/28/11
to djan...@googlegroups.com
metehan hocam. istediginiz şu olsa gerek.
Entry.objects.filter(pub_date__year=2006)

mth...@gmail.com

unread,
Nov 28, 2011, 6:25:33 AM11/28/11
to djan...@googlegroups.com
Malesef... yazilar niteli�i ManyToMany olacak ve yazilar niteli�inin de�eri 10 yaz� oldu�u i�in 10 olacak. E�er 11 yaz� varsa bir kategoride(at�yorum) bunu listeye alacak.

Model.objects.filter(yazilar>10) gibi. Tabii b�yle bir �ey yap�lm�yor, ama anlatmak istedi�im bu.

yazilar.count() ile ka� yaz� oldu�u al�n�yor. Ama filtrelemesini beceremedim.

28-11-2011 12:14, �ahin mersin yazm��:
metehan hocam. istediginiz �u olsa gerek.
Entry.objects.filter(pub_date__year=2006)



onur mat

unread,
Nov 28, 2011, 6:33:37 AM11/28/11
to djan...@googlegroups.com
istediginiz aggregation:

>>> Book.objects.annotate(num_authors=Count('authors')).filter(num_authors__gt=1)


--
onur



2011/11/28 mth...@gmail.com <mth...@gmail.com>
Malesef... yazilar niteliği ManyToMany olacak ve yazilar niteliğinin değeri 10 yazı olduğu için 10 olacak. Eğer 11 yazı varsa bir kategoride(atıyorum) bunu listeye alacak.

Model.objects.filter(yazilar>10) gibi. Tabii böyle bir şey yapılmıyor, ama anlatmak istediğim bu.

yazilar.count() ile kaç yazı olduğu alınıyor. Ama filtrelemesini beceremedim.


28-11-2011 12:14, şahin mersin yazmış:
metehan hocam. istediginiz şu olsa gerek.
Entry.objects.filter(pub_date__year=2006)



--
Bu e-postayı Google Grupları'ndaki "django-tr" adlı gruba abone olduğunuz için aldınız.
Bu gruba kayıt göndermek için djan...@googlegroups.com adresine e-posta gönderin.
Bu gruba olan aboneliğinizi iptal etmek için django-tr+...@googlegroups.com adresine e-posta gönderin.
Diğer seçenekler için http://groups.google.com/group/django-tr?hl=tr adresinden grubu ziyaret edin.

mth...@gmail.com

unread,
Nov 28, 2011, 10:29:46 AM11/28/11
to djan...@googlegroups.com
annotate(chapters_count=Count("manga_chapters")).filter(chapters_count__gt=0) Bu �ekildeki kod b�l�m say�s� 0dan y�ksek olanlar� d�nd�rmemi sa�lad�. Te�ekk�rler. Daha �nce bunlar� g�rmeme ra�men beceremem diye el s�rmemi�tim.

28-11-2011 13:33, onur mat yazm��:
istediginiz aggregation:

>>> Book.objects.annotate(num_authors=Count('authors')).
filter(num_authors__gt=1)


--
onur



2011/11/28 mth...@gmail.com <mth...@gmail.com>
Malesef... yazilar niteli�i ManyToMany olacak ve yazilar niteli�inin de�eri 10 yaz� oldu�u i�in 10 olacak. E�er 11 yaz� varsa bir kategoride(at�yorum) bunu listeye alacak.
Reply all
Reply to author
Forward
0 new messages