दूसरा विकल्प यह है कि यदि आपके पास एक फ़िल्टर है जिसे आप हमेशा लागू करना चाहते हैं, तो सवाल में मॉडल पर एक कस्टम प्रबंधक जोड़ने के लिए जो हमेशा फ़िल्टर को लागू किए गए परिणामों पर लागू करता है।
इसका एक अच्छा उदाहरण एक Eventमॉडल है, जहां 90% प्रश्नों के लिए आप जिस मॉडल पर कुछ करना चाहते हैं Event.objects.filter(date__gte=now), जैसे आप चाहते हैं , यानी आप आम तौर पर Eventsउस में रुचि रखते हैं जो आगामी हैं। ऐसा लगेगा:
class EventManager(models.Manager):
def get_query_set(self):
now = datetime.now()
return super(EventManager,self).get_query_set().filter(date__gte=now)
और मॉडल में:
class Event(models.Model):
...
objects = EventManager()
लेकिन फिर से, यह Eventमॉडल पर किए गए सभी डिफ़ॉल्ट प्रश्नों के खिलाफ एक ही फ़िल्टर लागू करता है और इसलिए ऊपर वर्णित कुछ तकनीकों के समान लचीला नहीं है।