Jak kolejność miksów wpływa na klasę pochodną?

Powiedzmy, że mam następujące miksy, które nakładają się na siebie, dotykającdispatch():

<code>class FooMixin(object):
    def dispatch(self, *args, **kwargs):
        # perform check A
        ...
        return super(FooMixin, self).dispatch(*args, **kwargs)

class BarMixin(object):
    def dispatch(self, *args, **kwargs):
        # perform check B
        ...
        return super(FooMixin, self).dispatch(*args, **kwargs)
</code>

Jeśli chcę, aby mój widok przejrzał zamówienie, zaznacz A -> sprawdź B, jeśli mój kod będzieMyView(FooMixin, BarMixin, View) lubMyView(BarMixin, FooMixin, View)?

I dlaczego zawsze to robimyView lub jego podklasy po miksach? (Zauważyłem to, czytając kod źródłowy ogólnych widoków django, ale nie znam uzasadnienia, jeśli takowe istnieje)

questionAnswers(1)

yourAnswerToTheQuestion