Warum kann ich mehrere Django ModelAdmin nicht mit demselben Model registrieren?

8

Ich habe das folgende ModelAdmin:

%Vor%

Ich möchte jetzt ein Modell hinzufügen, um archivierte (älter als heute) Ereignisse zu verwalten.

%Vor%

Aber wenn ich das versuche, bekomme ich AlreadyRegistered Ausnahme.

Warum kann ich nicht ein anderes ModelAdmin mit demselben Model implementieren und wie bekomme ich verschiedene Admin-Ansichten desselben Modells?

Ich weiß, dass ich eine benutzerdefinierte list_filter in meiner Klasse implementieren kann, aber ich möchte Dinge auf verschiedenen Seiten getrennt halten.

    
Luca 08.10.2012, 22:14
quelle

1 Antwort

18

Verwenden Sie Proxy-Modelle:

%Vor%

Nun können Sie zwei Modelle ohne Override ModelAdmin.queryset method:

registrieren %Vor%

Sie können den Modus über Proxy-Modelle und managers im Dokument.

Benutze auch dies:

%Vor%

Als erstes Argument super() take aktuelle Klasse. Siehe doc

Hinweis: django hat Manager.get_query_set in Manager.get_queryset in django == 1.7 umbenannt.

    
defuz 08.10.2012, 22:15
quelle