Django Queryset中的布尔比较?

时间:2011-01-03 01:36:23

标签: django

我的模型字段定义如下:

class Room(models.Model):
    ...
    ...
    is_course = models.BooleanField("Is Room a Course?", default= False)

现在,我正在尝试查找数据库中is_course字段为False值的所有记录。

我尝试以下操作,但似乎不起作用:

myrooms = Room.objects.filter(is_course= False)

执行此操作的正确方法是什么/

2 个答案:

答案 0 :(得分:4)

查询是正确的。确保正在查询的数据库中有记录。做一个Room.objects.all()并检查任何is_course = to False。

答案 1 :(得分:-2)

我也看到了这个问题(同样也是SQLite + Django 1.2)。必须是一些ORM错误。尝试运行以下语句来修复它:

Room.objects.all().update(is_course=False)

之后,你应该得到结果。