कृपया मुझे बताएं कि मैं इस प्रारूप में समय को आउटपुट करने के लिए Django का उपयोग कैसे कर सकता हूं, जैसे "अंतिम सोमवार" या "अंतिम शुक्रवार" यदि तिथियों के बीच का अंतर एक सप्ताह से अधिक नहीं है।
1 उत्तर
मैं इसके लिए एक कस्टम फ़िल्टर लिखूंगा (यह मानता है कि value
अतीत की एक तारीख है)। यह त्वरित और गंदा है, और आप "पहले आज," "कल," आदि की सटीक रिपोर्ट करने के लिए मध्यरात्रि से अधिक समय को समायोजित करने के लिए अधिक तर्क चाहते हैं।
from datetime import datetime
from django import template
register = template.Library()
@register.filter(name='relative_date')
def relative_date(value):
timespan = datetime.now() - value
if timespan.days == 0:
return 'Within the last day'
if timespan.days == 1:
return 'Yesterday'
if timespan.days <= 7:
return f"Last {value.strftime('%A')}"
return value.strftime('%Y-%m-%d') # Or whatever format you want to use for older dates
फिर अपने टेम्पलेट में:
{{ some_date|relative_date }}
पर जानकारी के लिए कस्टम टेम्प्लेट टैग और फ़िल्टर दस्तावेज़ पढ़ें इस फ़ंक्शन वाली फ़ाइल कहाँ रहनी चाहिए और इसे अपनी टेम्पलेट फ़ाइलों में कैसे आयात करें।
संबंधित सवाल
जुड़े हुए प्रश्न
नए सवाल
python
पायथन एक बहु-प्रतिमान है, गतिशील रूप से टाइप किया हुआ, बहुउद्देशीय प्रोग्रामिंग भाषा है। यह एक साफ और एक समान वाक्यविन्यास सीखने, समझने और उपयोग करने के लिए त्वरित होने के लिए डिज़ाइन किया गया है। कृपया ध्यान दें कि अजगर 2 आधिकारिक तौर पर 01-01-2020 के समर्थन से बाहर है। फिर भी, संस्करण-विशिष्ट पायथन सवालों के लिए, [अजगर -२.०] या [अजगर -३.x] टैग जोड़ें। पायथन वेरिएंट (जैसे, ज्योथन, PyPy) या लाइब्रेरी (उदा।, पांडस और न्यूमपी) का उपयोग करते समय, कृपया इसे टैग में शामिल करें।