मैं एक मॉडल है:Django यूनिकोड को मजबूर: जरूरत स्ट्रिंग या बफर, datetime.date पाया
class MyModel(models.Model):
id = models.IntegerField(primary_key=True)
recorded_on = models.DateField()
precipitation = models.FloatField(null=True, blank=True)
मेरे विचार में
मैं एक प्रश्न इस प्रकार है:
import datetime
def my_view(request):
...
format = '%Y-%m-%d'
sd = datetime.datetime.strptime(startdate, format)
ed = datetime.datetime.strptime(enddate, format)
queryset = MyModel.objects.filter((recorded_on__range = (sd, ed)))
...
लेकिन जब भी मैं कोशिश करते हैं और क्वेरीसमूह के साथ कुछ भी (जैसे json डंप, टेम्पलेट में प्रदर्शन) करते हैं, मैं निम्नलिखित त्रुटि मिलती है:
coercing to Unicode: need string or buffer, datetime.date found
मैं जानता हूँ कि dea लिए एक आसान तरीका होना चाहिए मैं इसके साथ, लेकिन मुझे अभी तक यह नहीं मिला है।
किसी भी मदद की बहुत सराहना की जाएगी।
संपादित करें:
डेटा का एक उदाहरण:
+----+-------------+---------------+
| id | recorded_on | precipitation |
+----+-------------+---------------+
| 24 | 1987-07-02 | 20.7 |
| 33 | 1987-07-11 | 0.4 |
+----+-------------+---------------+
कृपया वास्तविक ट्रेसबैक दिखाएं। कौन सी रेखा त्रुटि पैदा कर रही है? –
क्या आप 'record'on' को' + 'ऑपरेटर का उपयोग करके यूनिकोड स्ट्रिंग के साथ 'record_on' को संयोजित करने की कोशिश कर रहे किसी भी बदलाव से हैं? यदि ऐसा है, तो ऐसा करने का तरीका 'u "एक स्ट्रिंग है" + str (obj.recorded_on) ' – vartec
मेरा ट्रेसबैक पोस्ट से कुछ अलग है, क्योंकि मैंने इसे सरल बना दिया है - मुझे संदेह है कि यह एक सामान्य समस्या है। लेकिन django के बारे में शिकायत करने वाले मेरे कोड की रेखा Views.py लाइन है जो टेम्पलेट को प्रस्तुत करती है। यहां लिंक करें: http://dpaste.com/722851/ मैंने खोल में क्वेरी की भी कोशिश की और क्वेरीसेट को प्रिंट करने या फिर पुन: सक्रिय करने की कोशिश करने से एक ही त्रुटि मिलती है। –