2 Stimmen

Methoden der Admin-Ansicht überschreiben - Django

Ich muss das Hinzufügungsformular in der Verwaltungskonsole außer Kraft setzen.

Ich denke daran, dies zu erreichen, indem ich eine Ansicht schreibe, die dann auf die Admin-Ansicht für das Endergebnis verweisen würde.

Ähnlich wie hier (wobei admin_basic_ass_user_view die Admin-Ansicht ist)

@required_login
def add_user(request):
    if condition:
        return admin_basic_add_user_view(request)
    return render_to_response("admin/auth/user/add_form.html", { ... })

Irgendwelche Ideen?

3voto

Daniel Roseman Punkte 565786

Warum überschreiben Sie nicht einfach die entsprechenden Methoden mit Ihrer ModelAdmin-Unterklasse? Das ist schließlich der Grund, warum es eine Klasse ist.

1voto

CoreyD Punkte 210

Fügen Sie Ihrer urls.py etwas wie das folgende hinzu

((r'^admin/auth/users/add/$', 'Project.SomeAPP.admin_views.add_user'),

Der Pfad muss auf Ihre neue Ansicht zeigen. Sie sollten die Ergebnisse Ihrer neuen Ansicht auf der Seite "Benutzer hinzufügen" der Verwaltungsoberfläche sehen.

EDIT: Ich vergaß zu erwähnen, dass Sie diese Zeile VOR der normalen Admin-Interface-Zeile in der urls.py einfügen müssen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X