Python 太多值无法解压缩[Django]
Python 太多值无法解压缩[Django],python,django,Python,Django,isExpired是一个布尔函数。如何修改筛选器,使筛选器不会引发ValueError?您以错误的格式进行查询 您的查询应采用以下形式: def index(request): expiring_list = probe.objects.filter("isExpired=True") output = ', '.join([p.serial for p in expiring_list]) return HttpResponse(output) 这是您在模型字段为is
isExpired
是一个布尔函数。如何修改筛选器,使筛选器不会引发ValueError
?您以错误的格式进行查询
您的查询应采用以下形式:
def index(request):
expiring_list = probe.objects.filter("isExpired=True")
output = ', '.join([p.serial for p in expiring_list])
return HttpResponse(output)
这是您在模型字段为isExpired
时需要进行的查询。但既然您说它是一个函数,那么假设该函数在类中,您需要通过以下方式获取所有对象:
expiring_list = probe.objects.filter(isExpired = True)
expiring_列表现在将包含model probe的所有对象,其中
isExpired
函数返回True
参考前面的问题,我认为isExpired不是模型中的一个字段
我认为exp_date是您正在寻找的领域
试试这个:
expiring_list = []
objects = probe.objects.all()
for obj in objects:
if obj.isExpired() == True:
expiring_list.append(obj)
IsExpired是一个使用到期日期字段输出布尔值的函数,因此我不能将其用作普通字段IsExpired是类中的函数吗?到期日是模型中的一个字段。如果是这种情况,那么您需要以下内容:objects=probe.objects.all()for obj in objects:ifIf isExpired是一个函数,验证应该是这样的:
If obj.isExpired():
@Arpit Goyal我必须稍微修改代码,使其看起来像这样:If obj.isExpired()==True:基本上主要的区别是isExpiredYeah后面的参数括号,对此我很抱歉。这是一个诚实的错误:p这里的问题是我不知道如何调用函数,但感谢这种替代方法:)
import datetime
def index(request):
expiring_list = probe.objects.filter(exp_date__lt=datetime.date.today())
output = ', '.join([p.serial for p in expiring_list])
return HttpResponse(output)