0

有没有办法通过 foreignObject 过滤

查看我的代码,我想修复它。

型号部分:

class UserProfile:
    blahblah

class FreeTime : 
    owner = models.ForeignKey(UserProfile)
    fromTime=models.DateField()
    toTime=models.DateField()

现在,编码部分

givenTime = date(2012,11,11)


freeTimes = FreeTime.objects.filter(fromTime__lte=givenTime, toTime__gte=givenTime)

users = []
for freeTime in freeTimes:
    users.append(freeTime.owner)

//todo : remove duplicated object of user

这完全是浪费代码。

如您所见,我想要的是找到在给定时间有空的用户。

有什么办法可以减少代码?

4

1 回答 1

3

我认为这应该有效:

User.objects.filter(freetime__fromTime__lte=givenTime, freetime__toTime__gte=givenTime)

编辑:

正如@calvin Cheng 所说,您应该向用户 FK:

from django.contrib.auth.models import User


class FreeTime(models.Model): 
    owner = models.ForeignKey(User)
    fromTime=models.DateField()
    toTime=models.DateField()
于 2012-11-18T16:15:43.823 回答