title: Mixin question for ModelAdmin
body: <p>I'm overriding a ModelAdmin method thus:</p>
  
  <pre><code>def response_change(self, request, obj):
      # alter redirect location if 'source' is found in GET
      response = super(JobOptions, self).response_change(request, obj)
      source = request.GET.get('source', None)
      if source:
          response['location'] = source
      return response
  </code></pre>
  
  <p>Rather than repeat this on every model I'd like to make it a mixin.</p>
  
  <p>If I do:</p>
  
  <pre><code>def RedirectMixin(admin.ModelAdmin)
  </code></pre>
  
  <p>and then:</p>
  
  <pre><code>def MyModel(admin.ModelAdmin, RedirectMixin)
  </code></pre>
  
  <p>then I get a MRO error.</p>
  
  <p>However if RedirectMixin doesn't inherit from admin.ModelAdmin then the method doesn't get called.</p>
  
  <p>An additional problem is how to generalise the super() call so it doesn't have the superclass hard-coded in.</p>