2011-05-23 10 views
6

दिनांक सीमाओं पर मॉडल फ़िल्टर कैसे प्राप्त करें। कर्मचारी डोज का उपयोग करके मेरी परियोजना में, मुझे एक टेबल को डिज़ाइन करने की आवश्यकता है। कर्मचारी की तरह जो तीन महीने से भी कम समय में शामिल हो गया है, 3-6 माह, 6-12 महीने, 12-24 महीने।django: तिथि पर मॉडल फ़िल्टर

Depart < 3month 3-6months 6-12months 12-24months 
----------------------------------------- ---- ----- 
    A dep 4  6    6   8 

------------------------------------------------------ 

django में यह फ़िल्टर कैसे करें।

मैं इस लिंक से गुजर चुका हूं, लेकिन यह भ्रमित है।

http://www.nerdydork.com/django-filter-model-on-date-range.html

अग्रिम

+1

क्या आप समझा सकते हैं कि लिंक किए गए आलेख का कौन सा हिस्सा आपके लिए काम नहीं करता है? – mwcz

उत्तर

19

धन्यवाद रेंज फिल्टर इस तरह काम करता है:

MyModel.objects.filter(date__range=(range_start, range_end)) 

आप datetime.timedelta साथ उपयोग कर सकते हैं कि संयोजन के रूप में महीने की अवधि के लिए। उदाहरण के लिए:

from datetime import datetime, timedelta 

now = datetime.now() 

# <3 months 
three_months_ago = now - timedelta(months=3) 
MyModel.objects.filter(date__range=(three_months_ago, now)) 
संबंधित मुद्दे