2013-04-06 1 views
16

Sono nuovo di Django. Sto provando a eseguire un'app e devo aggiungere un nuovo utente all'admin. Il server è in esecuzione. Quando inserisco le informazioni, firmo il nuovo utente e premo "salva", ricevo l'errore qui sotto. Sto usando il django-trunk.Non è possibile aggiungere messaggi senza installare django.contrib.messages.middleware.MessageMiddleware

MessageFailure at /admin/auth/user/add/ 
You cannot add messages without installing 
django.contrib.messages.middleware.MessageMiddleware 

Request Method: POST 
Request URL: http://localhost:8000/admin/auth/user/add/ 
Django Version: 1.6.dev20130403090717 
Exception Type: MessageFailure 
Exception Value: You cannot add messages without installing django.contrib.messages.middleware.MessageMiddleware 

Qualche idea di cosa potrebbe accadere?

+0

Hai 'django.contrib.messages' in INSTALLED_APPS e' Django .contrib.messages.middleware.MessageMiddleware' in MIDDLEWARE_CLASSES? – alecxe

+0

Eccellente! Ha funzionato. Grazie. – user1867563

+0

Sto installando un pacchetto dal 2008 e suppongo che il file delle impostazioni non sia aggiornato. – user1867563

risposta

1

Ho incontrato lo stesso errore. È necessario notare l'ordine del middleware in MIDDLEWARE_CLASSES. Inserire il middleware corrispondente nel final.Like questo,

MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware', 
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware', 
) 

Nota la disposizione ordine.

0

Probabilmente hai inserito un valore errato WSGI_request quando di solito si chiama request come parametro a add_message() metodo

1

Verificare se è

MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware', 
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware', 
) 

invece di

MIDDLEWARE = (
    'django.middleware.common.CommonMiddleware', 
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware', 
) 

nome tupla deve essere MIDDLEWARE_CLASSES