Ich habe überhaupt das folgende Modellkann nicht aktualisiert Django 1.9 BooleanField
class UserProfile(models.Model):
user = models.OneToOneField(User, related_name='profile')
force_password_change = models.BooleanField(default=False)
Aus irgendeinem Grund, den ich nicht in der Lage bin, um die BooleanField zu ändern. Ich möchte das in einer Ansicht ohne Modellform machen. Hier ist die Ausgabe, die ich von der Django-Befehlszeile bekomme
>>> new_user = User.objects.get(username="bob")
>>> new_user
<User: bob>
>>> type(new_user)
<class 'django.contrib.auth.models.User'>
>>> new_user.profile
<UserProfile: bob>
>>> type(new_user.profile)
<class 'accounts.models.UserProfile'>
>>> new_user.profile.force_password_change
False
>>> new_user.profile.force_password_change = True
>>> new_user.save()
>>> new_user.profile.force_password_change
False
>>>
Also was fehlt mir hier? Ich bin sicher, es ist etwas Dummes, aber jede Hilfe wäre großartig.
UPDATE:
gleiches Problem, wenn das Profil Feld aktualisieren.
>>> new_user.profile.force_password_change
False
>>> new_user.profile.force_password_change = True
>>> new_user.profile.save()
>>> new_user.profile.force_password_change
False
>>>
UPDATE 2:
versucht, dies auch:
>>>
>>> new_user.profile.force_password_change = True
>>> new_user.profile.save()
>>> new_user = User.objects.get(pk=new_user.pk)
>>> new_user.profile.force_password_change
False
>>>
ich das letzte Bit von nützlichen Informationen denke, ich bieten kann, ist, dass ich voll und ganz das force_password_change Feld durch den Admin-Panel ändern. Es ist so, als würde die Sicherungsaktion nicht ausgeführt, wenn ich user.profile.save() ausprobiere. Aber ich bekomme keine Fehler, die mir auffallen.
Sie müssen speichern 'new_user.profile' ... – thebjorn
Nein. Funktioniert nicht. >>> new_user.profile.force_password_change Falsch >>> new_user.profile.force_password_change = True >>> new_user.profile.save() >>> new_user.profile.force_password_change Falsch >>> – RG5
Update Ihr Frage, setze Code nicht in Kommentare. – thebjorn