python - 如何使用字符串过滤日期?

标签 python django django-models

页面上的数据表可以通过用户输入进行过滤。在 ajax 查询中收到输入的字符串,我正在尝试通过此字符串过滤对象。字符串字段过滤得很好,但是当我尝试过滤日期时:

querySet.filter(datefield__icontains=searchString)

导致MySQL异常: 警告:日期时间值不正确:第 1 行“”列的“%%”

有没有办法使用字符串过滤日期字段?

最佳答案

您需要create a datetime objects from the string然后使用该对象进行过滤。您可能希望过滤日期大于或小于日期时间对象的对象。为此,您可以使用 filter(datefield__gt=datetime_obj)filter(datefield__lt=datetime_obj)

关于python - 如何使用字符串过滤日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9893851/

相关文章:

python - PyTorch 在用线性模型逼近平方函数时不收敛

python - 我如何让 IPython 按类组织制表符补全的可能性?

python - 当我 pip 安装要求时,无限循环不兼容(Django1.99)

python - Django 按组保留一个元素,然后在此查询集上使用属性

python - 使用 XPath 查找最上面的以下元素

javascript - YouTube 登录页面上的 javascript 如何发送表单数据?

javascript - 在 Google Charts 中以不同方式为条形图的条形着色

node.js - Node 中的 npm 就像 Django 中的 virtualenv 一样吗?

Django:唯一 ID 生成器

python - JSON数据转换为django模型