gpt4 book ai didi

mysql - 在 Django ORM 中按相关模型字段过滤模型

转载 作者:行者123 更新时间:2023-11-30 00:08:44 24 4
gpt4 key购买 nike

我有两个模型:adverisement_campaign 和advertisement_view( View 日志)。每个广告事件向用户展示的频率不得超过每 X 天一次。因此,事件模型具有带天数的字段。我需要选择尚未向用户显示超过此事件天数的事件。并从此列表中获取随机事件来显示用户。所以,我写了查询,其中选择了广告系列,还没有看到。

user_campaigns = AdvertShowEvent.objects.filter(user=user)
.values('advertisement_id')\
.annotate(datetime_last=Max('datetime'))\
.values_list('advertisement_id')

但现在我需要过滤事件以显示用户事件,他没有看到超过 X 天的事件,为每个公司指定。像这样的事情

user_campaigns = AdvertShowEvent.objects.filter(user=user, **datetime_last__gte=asdvertisement.days_between_shows**)
.values('advertisement_id')\
.annotate(datetime_last=Max('datetime'))\
.values_list('advertisement_id')

如何使用 Django ORM 进行此过滤?

最佳答案

类似的东西应该可以解决问题:

user_campaigns = AdvertShowEvent.objects.filter(user=user, 
**datetime_last__gte=datetime.datetime.now() - datetime.timedelta(days=days_between_shows))
.values('advertisement_id')\
.annotate(datetime_last=Max('datetime'))\
.values_list('advertisement_id')

关于mysql - 在 Django ORM 中按相关模型字段过滤模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24276972/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com