django: auth user add_view broken?

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Glaube hab einen django Bug gefunden:

Wenn man in seinen settings TEMPLATE_STRING_IF_INVALID mit irgendeinem Wert setzt, dann funktioniert "User hinzufügen" im admin panel nicht mehr.

Das verwendete Template ist: 'admin/auth/user/add_form.html' das hat ein {% extends "admin/change_form.html" %} und dort wird dir form so erstellt:

Code: Alles auswählen

<form ... action="{{ form_url }}" method="post"...
Im view django.contrib.auth.admin.UserAdmin.add_view() wird aber im Template context u.a. der Wert "form_url" nicht gesetzt. Das fällt aber nur dann auf, wenn TEMPLATE_STRING_IF_INVALID nicht gleich "" ist ;)

EDIT: http://code.djangoproject.com/ticket/11176

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Nicht nur du. Du hast wohl #11176 angelegt, aber #9599 war auch schon ein Duplikat von 4 anderen Meldungen :) Die älteste stammt aus dem Feburar 2007.

Stefan
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Dabei hatte ich danach gesucht :(

Die Info ist ja echt dumm: it's also documented that admin relies on this setting being empty.

Na toll.

EDIT: work-a-round (in einem eigenen app/admin.py einfügen)

Code: Alles auswählen

from django.contrib.auth.admin import UserAdmin

org_add_view = UserAdmin.add_view
def ugly_patched_add_view(*args, **kwargs):
    old = settings.TEMPLATE_STRING_IF_INVALID
    settings.TEMPLATE_STRING_IF_INVALID = ""
    result = org_add_view(*args, **kwargs)
    settings.TEMPLATE_STRING_IF_INVALID = old
    return result

UserAdmin.add_view = ugly_patched_add_view
Schön ist das nicht :(

EDIT: Siehe auch http://www.jensdiemer.de/_command/118/blog/detail/59/

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Antworten