Ich erstelle ein Populations-Skript von einer MysqlDatabase zu Django Models.
Im Looping durch meine Daten aus dem Mysql empfangen und das geht gut.Django get_or_create gibt False zurück
Jetzt muss ich es in die Datenbank Django schreiben ...
mdl, succeeded = models.User.objects.get_or_create(
name=name,
password=password,
email=email
)
ich drucke succeeded
so kann ich sehen, was das Feedback ist, aber alles, es gibt mir ist False
Meine Django Modell User
bearbeitet wird, so dass alle Felder blank
sein können und ermöglicht NULL
oder haben eine Standard
My Model User
:
username = models.CharField(max_length=20, blank=True, null=True)
slug = models.SlugField(null=True, blank=True)
email = models.EmailField(unique=True, null=True)
name = models.CharField("First and last name", max_length=100)
uses_metric = models.BooleanField(default=True)
position = models.CharField("Position", max_length=70, blank=True, null=True,)
utility = models.ForeignKey(Utility, default=1, blank=True, null=True)
supplier = models.ForeignKey(Supplier, default=1, blank=True, null=True)
currency = models.ForeignKey(Currency, default=1)
phone = models.CharField("Direct phone number", max_length=40, blank=True, default='+')
gets_notifications_on_reply = models.BooleanField("Receive notifications", default=False)
memberlist = models.BooleanField("Show member in memberslist", default=True)
registration_date = models.IntegerField(default=floor(time.time()), blank=True, null=True)
is_staff = models.BooleanField(
_('staff status'),
default=False,
help_text=_('Designates whether the user can log into this site.'),
)
is_active = models.BooleanField(
_('active'),
default=True,
help_text=_(
'Designates whether this user should be treated as active. '
'Deselect this instead of deleting accounts.'
),
)
USERNAME_FIELD = 'email'
Ich abgeschnitten meine Tabelle, so dass das nicht das Problem ist, denke ich ... – LenapCapo
+ Ich habe versucht, auch erstellt, tat genau das gleiche. :( – LenapCapo
Umbenennen der Flagge wird nicht ändern, dass es die gleichen Informationen hat. Bitte überprüfen Sie erneut, dass Sie wirklich alle neuen Daten entfernt oder versuchen Sie mit anderen Werten. Gibt es immer 'False' oder nur auf einige Anfragen zurück? Es könnte auch sein dass Sie versuchen, die gleichen Daten zweimal zu importieren.Sie könnten das auch überprüfen, indem Sie die gleichen Daten verwenden, um nur einen Benutzer zu "holen"() Wenn es Ihnen gelingt, einen Benutzer zurückzugeben, dann existierte er vorher. – ingofreyer