假设我有这个模型:
class User(models.Model):
id = models.AutoField(primary_key=True)
username = models.CharField(max_length=10)
last_login = models.DateTimeField(null=True)
这是数据库中的一条记录,
id=15,
username='yhbohh'
last_login='2015-03-31 10:57:18'
我想获得上次登录月份= 3的对象的数量。
我试过shell,
User.objects.filter(last_login__year=2015).count() # return 80
User.objects.filter(last_login__month=3).count() # return 0
User.objects.filter(last_login__day=31).count() # return 0
我可以知道为什么最后2个查询没有返回记录吗? 我从其他问题和通知中搜索过,而不是有人建议使用日期范围比较来解决这个问题。但我只想知道这个意外结果的根本原因。
非常感谢!