2016-10-26 4 views
0

Ich habe einen Benutzer in meiner Django-Tabelle - auth_user. Der Benutzername = 'Django', aber wenn ich die ID überprüfe, ist es keine.Django Benutzer-ID ist null

enter image description here

Wenn ich in den Tabellen zu überprüfen, wird die ID auf 1 gesetzt

nicht sicher, warum u.id Keine ist.

+0

Die ID wird nur zugewiesen, wenn sie in der Datenbank gespeichert wird. In diesem Fall haben Sie nur ein Objekt im Speicher instanziiert, also gibt es keine ID – karthikr

Antwort

3

Der folgende Code erstellt ein Objekt Benutzer jedoch nicht in der Datenbank speichern:

# here u.id is None 
u = User(username="django") 

Ein-ID an einen neuen Benutzer-Objekt zugeordnet ist, wenn sie in der Datenbank hinzugefügt wird:

# here u.id is not None 
u = User.objects.create(username="django") 

Wenn das Benutzerobjekt bereits vorhanden ist, kann es aus der Datenbank geladen werden, und das id-Attribut wird ordnungsgemäß definiert:

Verwandte Themen