Django - Auth mit mongoengine DB

Ich damit umgehen will Beglaubigungen in meinem Django-Projekt mit meinem mongoengine db.

Habe ich versucht, ein paar Beispiele über diese Sachen beantwortet alte Fragen, aber es nicht ausführen. Ich bin mit Django 1.6 und mongoengine. Alles installiert ist, läuft und ich kann erstellen und speichern Sie Dokumente in meine Mongoengine DB.

Bin ich nach http://mongoengine-odm.readthedocs.org/en/latest/django.html

Und ich bekomme die folgende Fehlermeldung:

Wenn ich laufen:

>>> from django.contrib.auth.models import User
>>> user = User.objects.create_user('john', '[email protected]', 'johnpassword')

Bekomme ich diese:

Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/REBORN/reb_env/local/lib/python2.7/site-packages/django/db/models/manager.py", line 273, in __get__
    self.model._meta.object_name, self.model._meta.swapped
AttributeError: Manager isn't available; User has been swapped for 'mongo_auth.MongoUser'
>>> 

Ich verstehe wirklich nicht, 2 Dinge:

-Kann ich erstellen muss, und definieren Sie die Datenbank, wo die Benutzer gespeichert werden, oder Sie werden automatisch erstellt?

-Was ist ein Manager? Ich habe nicht definiert, jeder manager Zeug

Am Anfang dachte ich, dass das register gespeichert wurde, in eine db. callled 'mongo_auth.MongoUser', aber es hat nicht speichern Sie es im nirgendwo.

Ist hier die Modelle:

# Create your models here.
from mongoengine import *

class Profile(Document):
    email = StringField(required=True)
    first_name = StringField(max_length=50)
    last_name = StringField(max_length=50)

class auth_user(Document):
    username = StringField(max_length=50)
    email = StringField(max_length=50)
    password = StringField(max_length=50)

Den settings.py richtig konfiguriert, wie das Handbuch sagt.

EDIT @cestDiego:

Meine Einstellungen sind genau die gleichen, ich habe bemerkt, über das Db-backend, denn es schafft mir eine Datenbank geschrieben, die mich nicht interessiert, weil ich mongo...ich bin ja Sowieso ussing aus mongoengine.django.auth import User jetzt aber wenn ich versuche, erstellen Sie eine Benutzer-es gibt mich :

>>> user = User.objects.create_user('john', '[email protected]', 'johnpassword')
Traceback (most recent call last):
  File "<console>", line 1, in <module>
AttributeError: 'QuerySet' object has no attribute 'create_user'

Vielleicht sind wir das customizing der auth und das ist, warum Sie nicht arbeiten, keine Ahnung. Hast du dieses problem auch ?

ZWEITER EDIT:

War ich zu Lesen, und wir verwenden Djangos auth, nach dem konfigurieren, die richtigen Einstellungen, wie wir das getan haben.

Dann importieren muss, die von django.contrib.auth-import-Authentifizierung, und verwenden Sie authentifizieren sich als Sie es in Django-docs, hoffe auf Hilfe ;D.

from django.shortcuts import render
# Create your views here.
from django.http import HttpResponse
from game.models import *
from mongoengine import *
from models import User
from django.contrib.auth import authenticate

def login(request):
        user = authenticate(username='john', password='secret')
        if user is not None:
            # the password verified for the user
            if user.is_active:
                print("User is valid, active and authenticated")
            else:
                print("The password is valid, but the account has been disabled!")
        else:
            # the authentication system was unable to verify the username and password
            print("The username and password were incorrect.")
InformationsquelleAutor BugFixer | 2014-04-04
Schreibe einen Kommentar