Views#

Inheritance map for the coins app’s HTTP views. Each block lists one project-internal base class (or local mixin) and the coin views that extend it. Django base classes (DetailView / UpdateView / RedirectView) and django-braces mixins (LoginRequiredMixin, FormMessagesMixin) are omitted to keep the picture readable. (+ ...) after a leaf class lists any other project-internal parents the view also inherits from.

Bases in richy.core.views#

SubmenuViewMixin
└── CoinChildrenSubmenuViewMixin             (local)

BaseUserItemCreateView
└── OverviewCreateView                       (+ FetchDataMixin)

BaseFetchItemAjaxView
├── FetchOverviewAjaxView
└── FetchCoinAjaxView

BaseItemDetailView
└── CoinDetailView                           (+ CoinChildrenSubmenuViewMixin)

UserItemManipulationMixin
└── CoinUpdateView                           (+ CoinChildrenSubmenuViewMixin, FetchDataMixin)

BaseDeleteUserItemRedirectView
└── DeleteCoinRedirectView

BasePerformanceDetailView
└── PerformanceDetailView                    (+ CoinChildrenSubmenuViewMixin)

BaseDrawdownPeriodsAndAthsDetailView
└── DrawdownPeriodsAndAthsTemplateView       (+ CoinChildrenSubmenuViewMixin)

BaseTheEyeView
└── CoinTheEyeView                           (+ CoinChildrenSubmenuViewMixin)

BaseHistoricalData
└── HistoricalDataListView                   (+ CoinChildrenSubmenuViewMixin)

Bases in richy.news.views#

BaseNewsItemDetailView
└── NewsDetailView                           (+ CoinChildrenSubmenuViewMixin)

Local mixins (coins/views.py)#

Two mixins defined alongside the coin views. CoinChildrenSubmenuViewMixin extends SubmenuViewMixin; FetchDataMixin carries no project base.

FetchDataMixin
├── OverviewCreateView
├── CoinUpdateView
└── ResetCoinRedirectView

CoinChildrenSubmenuViewMixin
├── CoinDetailView
├── CoinUpdateView
├── PerformanceDetailView
├── DrawdownPeriodsAndAthsTemplateView
├── CoinTheEyeView
├── HistoricalDataListView
└── NewsDetailView