Django ORM日期字段输出错误



我想选择日期字段等于模型中最新日期的对象。所以我选择的最新日期

>>> latest_date = StockPrice.objects.latest('date').date
>>> latest_date
datetime.date(2021, 4, 9)

但我的模型中的最晚日期是20214-13。然后我试了这个

>>> StockPrice.objects.filter(date=latest_date)
<QuerySet []>

我使用刚刚得到的latest_date

但过滤后无任何显示

不知道这是怎么发生的。

/models.py

class StockPrice(models.Model):
    date = models.DateField()
    symbol = models.IntegerField()
    open = models.FloatField()
    high = models.FloatField()
    low = models.FloatField()
    close = models.FloatField()
    shares = models.IntegerField()
    volume = models.IntegerField()
    pe = models.FloatField()
    pb = models.FloatField()
    yield_rate = models.FloatField()
***
[click to data inserted to the model][1] 
  [1]: https://raw.githubusercontent.com/ycy-tw/python-django-stock/main/demodata/stockprice.csv

想办法吧!

混淆的结果是由数据类型引起的。

我使用pd.read_csv读取问题中给出的.csv文件并进行排序。之后

df.sort_values('date')

最近日期仍然是CCD_ 2。

然后我使用

df.date = pd.to_datetime('date')
df.to_csv('override where it from')

然后,

  1. 删除应用程序下的迁移文件夹
  2. 删除db.sqlite3
  3. 将数据重新插入数据库

最后,混乱的结果是没有孤独的人可用。

最新更新