Django过滤器返回空查询集,即使数据匹配

时间:2019-10-03 13:52:40

标签: django django-models django-filter

我有一个Django网站,正在寻找针对特定领域过滤我的模型的方法。字段CreatedDate是日期时间字段,即使我确定我指定的数据在查询集中,也不返回任何值。

我尝试将用户输入的日期强制转换为datetime对象,通过查询集进行解析并将每个模型CreatedDate添加到列表中,然后检查用户输入的日期是否在列表中(即如何)我知道数据在那里

views.py

.csproj

models.py

if createdDate[0] == '>':
    createdDate = createdDate[1:]
    cd = datetime.strptime(createdDate, '%Y-%m-%d')
    try: 
        query_results = query_results.filter(CreatedDate__gte=cd)
    except Exception as e:
        print2(e)
elif createdDate[0] == '<':
    createdDate = createdDate[1:]
    cd = datetime.strptime(createdDate, '%Y-%m-%d')
    try: 
        query_results = query_results.filter(CreatedDate__lte=cd)
    except Exception as e:
        print2(e)
else:
    cd = datetime.strptime(createdDate, '%Y-%m-%d')
    try:
        print2(createdDate)
        print2(query_results)
        query_results = query_results.filter(CreatedDate__icontains=cd)
    except Exception as e:
        print2(e)
CreatedDate = models.DateTimeField(blank=True, null=True)

我不知道为什么过滤器返回一个空查询集,即使我输入的日期清楚地在数据库中也是如此。如果我有任何遗漏,请让我知道,否则,请让我知道是否有解决办法

0 个答案:

没有答案