私はevent-list page(将来の予定)とevent-review page(過去の出来事、アーカイブ)を持っているページに取り組んでいます。django-cms AppHooksのキャッシュを無効にするには?
私はdjango-cms AppHookで作業しています。私は詳細ビューも持っているからです。
イベントの翌日、イベントはイベントリストに表示されなくなり、イベントレビューページに表示されます。しかし問題は、イベントがまだイベントリストページにあることです。
models.py
# Managers
class EventsManager(models.Manager):
"""EventsManager."""
def get_all(self):
return super(EventsManager, self) \
.filter(is_visible=True) \
.order_by('-date')
def get_all_future(self):
return super(EventsManager, self) \
.filter(is_visible=True) \
.filter(date__gte=datetime.datetime.now()) \
.order_by('date')
def get_all_past(self):
return super(EventsManager, self) \
.filter(is_visible=True) \
.filter(date__lt=datetime.datetime.now()) \
.order_by('-date')
views.py
class EventListView(ListView):
template_name = 'event_list.html'
queryset = Events.objects.get_all_future()
paginate_by = 10
@never_cache
def dispatch(self, *args, **kwargs):
return super(EventListView, self).dispatch(*args, **kwargs)
class EventArchiveView(ListView):
template_name = 'event_archive.html'
queryset = Events.objects.get_all_past()
paginate_by = 20
@never_cache
def dispatch(self, *args, **kwargs):
return super(EventArchiveView, self).dispatch(*args, **kwargs)
def get_context_data(self, **kwargs):
context = super(EventArchiveView, self).get_context_data(**kwargs)
context['is_arcive'] = True
return context
私は@never_cacheを使用しようとしましたが、イベントは、イベントリストページに残っています。キャッシュの問題だと思いますが、どこから検索を始めるかはわかりません。助言がありますか?