Kann nicht anmelden um Django /admin-Oberfläche
Zuerst von alle, bin ich ein Neuling. Ich bin mit Ubuntu 11.04 kommt mit Python 2.7, so dass ich installiert Python2.5 in unterschiedlichen dir zu laufen Django-Non-Rel auf Google App Engine.
Ich habe das Gästebuch-tutorial, und nun möchte ich hinzufügen, admin-Zugang, aber wenn ich in Benutzername:Passwort Django denkt Ihr falsch. Es gar nicht funktionieren wenn Sie eingesetzt werden, um die GAE. Wenn Sie wissen, bitte stecken Sie mich in die richtige Richtung.
Fügte ich hinzu:
AUTHENTICATION_BACKENDS = (
'django.contrib.auth.backends.ModelBackend',
)
INSTALLED_APPS = (
...
'django.contrib.admin',
....
)
BEARBEITEN
Ich habe auch
url(r'^admin/', include(admin.Website.urls)),
zu urls.py in Unterprojekt-Verzeichnis.
EOEDIT
Dann habe ich superuser erstellt und synchronisiert Datenbanken:
> python2.5 xxx-xxx-guestbook/manage.py createsuperuser python2.5
> xxx-xxx-guestbook/manage.py syncdb
Dann ran an die app und kann nicht anmelden. Ich erstellte mehrere verschiedene supersusers immer mit dem gleichen Ergebnis.
EDIT2
Danke an alle für die versuchte Hilfe, aber leider keine der angebotenen Lösungen das problem behoben. Ich habe entschieden, zuerst zu lernen Django auf seinen eigenen und dann vielleicht wechseln GAE Django-nonrel, die Frage ist also nicht mehr relevant. Soll ich noch wählen Sie eine Antwort zu geben jemand einige Punkte?
InformationsquelleAutor der Frage nana | 2011-07-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht allzu sicher, aber syncdb könnten entfernen Sie die superuser, die Sie gerade erstellt haben. Versuchen Sie einen superuser, wenn syncdb Sie dazu auffordert.
Sonst, nehmen Sie einen Blick auf die - user-Modell in
./manage.py shell
. Überprüfen SieUser.objects.all()[0].is_superuser
.InformationsquelleAutor der Antwort Ken
Es irgendeine Art der Einschränkung in django-nonrel.
Erstellen der superuser:
Erstellen der superuser
Führen Sie den webserver wieder
InformationsquelleAutor der Antwort David Poblador i Garcia
Vorausgesetzt, Sie haben den richtigen Benutzernamen und Passwort, die einzige Sache, die Sie präsentieren das gleiche Verhalten wie ein login fehlgeschlagen ist
is_staff=False
für die Nutzer in Frage stellen.Geh in deine Datenbank, und überprüfen den auth_user-Tabelle. Stellen Sie sicher, dass
is_staff
eingestellt istTRUE
auf den Benutzer, den Sie verwenden, um sich anzumelden.InformationsquelleAutor der Antwort Chris Pratt
In urls.py kommentieren Sie:
- und das sollte Sie gut für die Rennen 🙂
PS. vergessen Sie nicht, führen Sie ./manage.py syncdb und es werden Fragen zur Einrichtung eines admin-Benutzers.
InformationsquelleAutor der Antwort BoGs
Wenn du bist ein idiot, wie ich, Sie versuchen könnten, melden Sie sich mit Ihrer E-Mail eher als Ihr Benutzername.
Ich denke, ich Tat dies, weil beim erstellen der superuser erinnerte ich mich an die Eingabe einer E-Mail und nicht einen Benutzernamen (weil django bietet Sie einen Benutzernamen, ohne es), und vielleicht die übliche Konvention verwenden E-Mails für Benutzernamen.. Mann ich fühle mich dumm, haha.
InformationsquelleAutor der Antwort GP89
Ich getroffen hatte die gleiche situation so wie Sie ist. Und ich fand, wechselte ich das authentication backend
Und in der settings.py habe ich eine Zeile:
- Und backend ist wie:
Finden Sie eigentlich der Benutzername ist gezwungen, abgewechselt von 'E-Mail'. So müssen Sie Ihre login-Seite mit E-Mail-Konto.
Wenn, wie
Dann funktioniert es.
Hoffe, dass dies hilfreich für alle.
InformationsquelleAutor der Antwort dotslash
Ich hatte das gleiche problem und konnte nicht verstehen, warum ich konnte nicht einloggen, da alle Einstellungen korrekt waren. Aber ich verfolgte es um Django bietet mir einen superuser-Namen mit großem Anfangsbuchstaben, aber eigentlich speichern den Namen komplett in Kleinbuchstaben!
Habe ich natürlich benutzt, das superuser-Namen mit Hauptstädten (wie Django) und Authentifizierung ist fehlgeschlagen. Bei der überprüfung des Daten-Tabellen zu überprüfen 'is_staff' etc entdeckte ich den Fehler. Ich weiß, ich war nicht Irre, weil ich wiederholt den setup-Vorgang ein paar mal und stellte fest, die superuser-Anmeldeinformationen sicher zu sein, details wie Fall.
So, die moral ist vorsichtig sein bei der Annahme der Standard-name angeboten von Django! Es liegt!
InformationsquelleAutor der Antwort Tarquin
Es ist nicht so schwer zu reparieren.
Stellen Sie zunächst sicher, dass Ihre Standard-Einstellungen
in der settings-Datei von Ihrem website-Ordner.
Bekommen in Ihrem website-Ordner (über die Eingabeaufforderung), und geben Sie den folgenden Befehl ein:
Gehen Sie zurück in den browser und auf dem server ausgeführt werden. Legen Sie den Benutzernamen (nicht die email), die neben Ihrem Passwort, das Sie zuvor erstellt haben. Es wird sicherlich funktionieren diese Zeit.
InformationsquelleAutor der Antwort leong_geek