Pytania otagowane jako django-orm

System ORM Django, składający się z jego zestawów zapytań i systemów modelowych.

3
Jak wykonać warunek OR w zestawie zapytań django?
Chcę napisać zapytanie Django równoważne temu zapytaniu SQL: SELECT * from user where income >= 5000 or income is NULL. Jak zbudować filtr zestawu zapytań Django? User.objects.filter(income__gte=5000, income=0) To nie działa, ponieważ są to ANDfiltry. Chcę ORfiltrów, aby uzyskać połączenie poszczególnych zestawów zapytań.

4
Jaka jest różnica między select_related i prefetch_related w Django ORM?
W dokumencie Django select_related() „śledzi” relacje z kluczem obcym, wybierając dodatkowe dane obiektu pokrewnego podczas wykonywania zapytania. prefetch_related() wykonuje osobne wyszukiwanie dla każdej relacji i wykonuje „łączenie” w Pythonie. Co to znaczy „robić łączenie w pythonie”? Czy ktoś może zilustrować przykładem? Rozumiem, że w przypadku relacji klucza obcego użyj select_related; …

4
Odwołujący się do siebie klucz obcy Django
Jestem trochę nowy w aplikacjach internetowych i ogólnie rzeczach z bazami danych, więc może to być głupie pytanie. Chcę utworzyć model („CategoryModel”) z polem wskazującym na podstawowy identyfikator innego wystąpienia modelu (jego elementu nadrzędnego). class CategoryModel(models.Model): parent = models.ForeignKey(CategoryModel) Jak mam to zrobic? Dzięki!


3
Django values_list vs wartości
W Django, jaka jest różnica między następującymi dwoma: Article.objects.values_list('comment_id', flat=True).distinct() vs Article.objects.values('comment_id').distinct() Moim celem jest uzyskanie listy unikalnych identyfikatorów komentarzy pod każdym z nich Article. Przeczytałem dokumentację (i faktycznie użyłem obu podejść). Wyniki jawnie wydają się podobne.


9
Dlaczego iteracja przez duży zestaw Django QuerySet zużywa ogromne ilości pamięci?
Omawiana tabela zawiera około dziesięciu milionów wierszy. for event in Event.objects.all(): print event Powoduje to, że użycie pamięci stale rośnie do około 4 GB, w którym to momencie wiersze są drukowane szybko. Zaskoczyło mnie długie opóźnienie przed wydrukowaniem pierwszego wiersza - spodziewałem się, że wydrukuje się niemal natychmiast. Próbowałem też, …


4
Łączenie wielu filtrów () w Django, czy to błąd?
Zawsze zakładałem, że łączenie w łańcuch wielu wywołań filter () w Django jest zawsze tym samym, co zbieranie ich w jednym wywołaniu. # Equivalent Model.objects.filter(foo=1).filter(bar=2) Model.objects.filter(foo=1,bar=2) ale natknąłem się na skomplikowany zestaw zapytań w moim kodzie, gdzie tak nie jest class Inventory(models.Model): book = models.ForeignKey(Book) class Profile(models.Model): user = models.OneToOneField(auth.models.User) …
106 django  django-orm 

3
Wybierz różne wartości z pola tabeli
Walczę z poruszaniem się po ORM Django. Chcę uzyskać listę różnych wartości w polu w mojej tabeli ... odpowiednik jednego z poniższych: SELECT DISTINCT myfieldname FROM mytable (lub alternatywnie) SELECT myfieldname FROM mytable GROUP BY myfieldname Chciałbym przynajmniej zrobić to w sposób Django, zanim skorzystam z surowego sql. Na przykład …

5
Jak zmienić nazwy elementów w values ​​() w Django?
Chcę zrobić prawie to samo, co na tym bilecie na djangoproject.com , ale z dodatkowym formatowaniem. Z tego zapytania >>> MyModel.objects.values('cryptic_value_name') [{'cryptic_value_name': 1}, {'cryptic_value_name': 2}] Chcę dostać coś takiego: >>> MyModel.objects.values(renamed_value='cryptic_value_name') [{'renamed_value': 1}, {'renamed_value': 2}] Czy jest inny, bardziej wbudowany sposób, czy też muszę to zrobić ręcznie?
102 django  django-orm 

5
Django wybiera tylko wiersze ze zduplikowanymi wartościami pól
załóżmy, że mamy model w django zdefiniowany w następujący sposób: class Literal: name = models.CharField(...) ... Pole nazwy nie jest unikalne i dlatego może mieć zduplikowane wartości. Muszę wykonać następujące zadania: Wybierz wszystkie wiersze z modelu, które mają co najmniej jeden duplikat wartości w namepolu. Wiem jak to zrobić używając …
99 sql  django  django-orm 

4
Wybrać DISTINCT poszczególne kolumny w django?
Jestem ciekawy, czy istnieje sposób na wykonanie zapytania w Django, które nie jest „ SELECT * FROM...” poniżej. SELECT DISTINCT columnName FROM ...Zamiast tego próbuję wykonać „ ”. Konkretnie mam model, który wygląda następująco: class ProductOrder(models.Model): Product = models.CharField(max_length=20, promary_key=True) Category = models.CharField(max_length=30) Rank = models.IntegerField() gdzie Rankjest rangą w …

4
Django filtruje wiele do wielu z zawartością
Próbuję przefiltrować zbiór obiektów przez relację wiele do wielu. Ponieważ trigger_rolespole może zawierać wiele wpisów, wypróbowałem containsfiltr. Ale ponieważ jest to przeznaczone do użytku ze stringami, jestem prawie bezradny, jak powinienem filtrować tę relację (możesz zignorować values_list()atm.). Ta funkcja jest dołączona do profilu użytkownika: def getVisiblePackages(self): visiblePackages = {} for …
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.