|
|
|
@ -178,22 +178,20 @@ class EventMixin(object): |
|
|
|
result = [] |
|
|
|
result = [] |
|
|
|
tags = list(self.tag.all().values_list('pk', flat=True)) |
|
|
|
tags = list(self.tag.all().values_list('pk', flat=True)) |
|
|
|
themes = list(self.theme.all().values_list('pk', flat=True)) |
|
|
|
themes = list(self.theme.all().values_list('pk', flat=True)) |
|
|
|
top_paid = list( |
|
|
|
top_expos = list( |
|
|
|
model.objects.filter( |
|
|
|
model.objects.filter( |
|
|
|
Q( |
|
|
|
|
|
|
|
top__isnull=False, |
|
|
|
top__isnull=False, |
|
|
|
theme__in=themes, |
|
|
|
theme__in=themes, |
|
|
|
top__fr__lte=date.today(), |
|
|
|
top__fr__lte=date.today(), |
|
|
|
top__to__gte=date.today() |
|
|
|
top__to__gte=date.today() |
|
|
|
) | |
|
|
|
).order_by('?') |
|
|
|
Q( |
|
|
|
) |
|
|
|
|
|
|
|
paid_expos = list( |
|
|
|
|
|
|
|
model.objects.filter( |
|
|
|
paid_new__isnull=False, |
|
|
|
paid_new__isnull=False, |
|
|
|
theme__in=themes, |
|
|
|
theme__in=themes, |
|
|
|
top__fr__lte=date.today(), |
|
|
|
top__fr__lte=date.today(), |
|
|
|
top__to__gte=date.today() |
|
|
|
top__to__gte=date.today() |
|
|
|
) |
|
|
|
|
|
|
|
).filter( |
|
|
|
|
|
|
|
is_published=True |
|
|
|
|
|
|
|
).order_by('?') |
|
|
|
).order_by('?') |
|
|
|
) |
|
|
|
) |
|
|
|
qs = model.objects.language().filter(country_id=self.country_id) |
|
|
|
qs = model.objects.language().filter(country_id=self.country_id) |
|
|
|
@ -202,9 +200,9 @@ class EventMixin(object): |
|
|
|
qs = model.objects.language() |
|
|
|
qs = model.objects.language() |
|
|
|
r, e = self.get_recommend_expos_incl(qs, tags, themes, exclude) |
|
|
|
r, e = self.get_recommend_expos_incl(qs, tags, themes, exclude) |
|
|
|
result += r |
|
|
|
result += r |
|
|
|
result = top_paid + result |
|
|
|
result = list(set(top_expos + paid_expos + result)) |
|
|
|
if len(result) < 5: |
|
|
|
if len(result) < 5: |
|
|
|
self._recommend_expos = result[:3] |
|
|
|
self._recommend_expos = result[:2] |
|
|
|
else: |
|
|
|
else: |
|
|
|
self._recommend_expos = result[3:5] |
|
|
|
self._recommend_expos = result[3:5] |
|
|
|
return self._recommend_expos |
|
|
|
return self._recommend_expos |
|
|
|
|