Gibt es in Django eine Standardmethode zum Schreiben komplexer, benutzerdefinierter Filter für QuerySets?Django Custom Queryset-Filter
Wie kann ich schreiben
MyClass.objects.all().filter(field=val)
Ich möchte so etwas wie dies zu tun:
MyClass.objects.all().filter(customFilter)
ich einen Generator Ausdruck
(x for x in MyClass.objects.all() if customFilter(x))
verwenden könnte, aber das würde verlieren die Verkettbarkeit und alle anderen Funktionen, die die QuerySets bieten.
Ich denke, ich brauche das. Aber es sieht furchtbar kompliziert aus verglichen mit der Möglichkeit, eine Filterfunktion im laufenden Betrieb zu übergeben. – interstar
Es ist nicht sehr kompliziert, und es ist eine gute Praxis, benutzerdefinierte Manager zu machen, besonders wenn Sie planen, Sachen von db usw. zu cachen. – Vasil