1
在我的django應用程序中,我有一個模型「匹配」,鏈接到我的模型「用戶」與外鍵。我也有一個函數,它給了我一個「live_matches」(與當前播放的匹配項)的query_set。從其他query_set獲取query_set。 Django
我試圖得到的是一個query_set與「live_matches」的所有用戶。
這裏是我的models.py:
class LiveMatchManager(models.Manager):
def get_query_set(self):
now = timezone.localtime(timezone.now())
queryset = super(LiveMatchManager, self).get_query_set()
return queryset.filter(match__date_start__lte=now, match__date_end__gte=now)
class Match(models.Model):
user = models.ForeignKey(User)
date_start = models.DateTimeField()
date_end = models.DateTimeField()
# Managers
objects = models.Manager()
live_matches = LiveMatchManager()
我想有是給我鏈接到一個「live_match」用戶的query_set的功能,我沒有找到怎麼做。
謝謝你的幫助。
非常感謝,它的工作原理。我只是有一個問題。我有一個UserProfile模型(一個自定義配置文件),通過OnetoOneField鏈接到模型用戶。我想在UserProfile而不是User(UserProfile.object.filter(...))的基礎上保留「user = models.ForeignKey(User)」的查詢集。你有什麼想法如何做到這一點?謝謝。 –
試試'UserProfile.objects.filter(user__match__in = Match.live_matches.all())' –
它可以很好地工作。非常感謝您的幫助。 –