gpt4 book ai didi

Django 强制到 Unicode : need string or buffer, datetime.date 找到

转载 作者:行者123 更新时间:2023-12-04 02:53:43 25 4
gpt4 key购买 nike

我有一个模型:

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

我知道一定有一种简单的方法可以解决这个问题,但我还没有找到。

任何帮助将非常感激。

编辑:

数据示例:
+----+-------------+---------------+
| id | recorded_on | precipitation |
+----+-------------+---------------+
| 24 | 1987-07-02 | 20.7 |
| 33 | 1987-07-11 | 0.4 |
+----+-------------+---------------+

最佳答案

您还没有显示完整的代码,但我怀疑问题出在您模型的 __unicode__ 上。方法。这需要返回一个实际的 unicode 字符串 - 如果你只是在做 return self.recorded_on这将因给定的错误而失败。尝试类似 return unicode(self.recorded_on) ,或使用 strftime转换为您想要的日期格式,例如 self.recorded_on.strftime('%Y-%m-%d') .

关于Django 强制到 Unicode : need string or buffer, datetime.date 找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9910535/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com