“>”, “=” und “

Lesezeit: 2 Minuten

Benutzeravatar von Finglish
Englisch

Mit = Unten konnte ich Personen filtern nach age:

qs = Person.objects.filter(age = 20)
                             # ↑ Here

Aber mit >, <, >= und <= unten konnte ich Personen nicht filtern nach age:

qs = Person.objects.filter(age > 20)
                             # ↑ Here
qs = Person.objects.filter(age < 20)
                             # ↑ Here
qs = Person.objects.filter(age >= 20)
                             # ↑↑ Here
qs = Person.objects.filter(age <= 20)
                             # ↑↑ Here

Dann bekam ich den folgenden Fehler:

NameError: Name „Alter“ ist nicht definiert

Wie kann ich greater than(>), greater than or equal to(>=), less than(<) und less than or equal to(>=) mit Filter() bei Django?

  • @BéresBotond Obwohl die Dokumente großartig aussehen, sind die Strukturierung und das Layout so schlecht, dass sie ohne direkten Link so gut wie nutzlos sind

    – Laufschleife

    6. Juli 2015 um 4:41 Uhr

  • @BéresBotond Leider ist dieser Link jetzt tot 🙁

    – dKen

    30. August 2016 um 18:59 Uhr

  • Arbeitslink für Dokument: docs.djangoproject.com/en/1.11/ref/models/querysets/#gt

    – Gaurav Pandey

    24. Januar 2018 um 7:43 Uhr


Benutzeravatar von lprsd
lprsd

Größer als:

Person.objects.filter(age__gt=20)

Größer als oder gleich wie:

Person.objects.filter(age__gte=20)

Weniger als:

Person.objects.filter(age__lt=20)

Weniger als oder gleich:

Person.objects.filter(age__lte=20)

Du findest sie alle darin [the documentation].(https://docs.djangoproject.com/en/stable/ref/models/querysets/).

  • Wow, das ging schnell :). Das funktioniert großartig für weniger als oder gleich, aber wie wäre es mit nur weniger als? (userprofile__level__lt=3) scheint nicht zu funktionieren

    – Englisch

    6. April 2012 um 6:57 Uhr

  • Es tut; aber in jedem Fall können Sie statt Filter (__lt) auch ausschließen (__gte).

    – lprsd

    6. April 2012 um 7:01 Uhr

  • Und vergiss NICHT, dass es zwei sind __ unterstreicht

    – Andilabs

    30. Januar 2014 um 6:48 Uhr

  • Ich erhalte diesen Fehler–> {FieldError}Nicht unterstütztes Lookup ‘Level’ für AutoField oder Join für das Feld nicht zulässig.

    – Aravind Pillai

    20. September 2018 um 3:18 Uhr

  • Erinnere dich an Veränderung userprofile__level durch Ihre Felder zB youtfield__lte. @AravindRPillai

    – christianbueno.1

    3. Juli 2022 um 23:33 Uhr


Stellen __gt Zusatz für “Ggrößer Than” zu der Feldname age:

Person.objects.filter(age__gt=20)
                    #    ↑↑↑↑ 
                    # age > 20

Stellen __gte Zusatz für “Ggrößer THan oder Egleich” zu der Feldname age:

Person.objects.filter(age__gte=20)
                    #    ↑↑↑↑↑ 
                    # age >= 20

Stellen __lt Zusatz für “LEss Than” zu der Feldname age:

Person.objects.filter(age__lt=20)
                    #    ↑↑↑↑ 
                    # age < 20

Stellen __lte Zusatz für “LEss THan oder Egleich” zu der Feldname age:

Person.objects.filter(age__lte=20)
                    #    ↑↑↑↑↑ 
                    # age <= 20

1440030cookie-check“>”, “=” und “

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy