Wie wirkt sich die Reihenfolge der Mixins auf die abgeleitete Klasse aus?
Angenommen, ich habe die folgenden Mixins, die sich durch Berühren überlappendispatch()
:
<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>
Wenn ich möchte, dass meine Ansicht die Bestellung durchläuft, markieren Sie A -> markieren Sie B, falls mein Code sein sollteMyView(FooMixin, BarMixin, View)
oderMyView(BarMixin, FooMixin, View)
?
Und warum setzen wir immerView
oder seine Unterklassen nach mixins? (Ich habe dies bemerkt, als ich den Quellcode der generischen Django-Ansichten gelesen habe, aber ich kenne die Gründe dafür nicht, falls es welche gibt.)