Ich erstelle eine Django-Anwendung, die eineAnmeldung und ein Login-Formular. Mein Anmeldetisch enthält alle Details. Ich möchte den Benutzernamen und das Passwort direkt in die Login-Tabelle kopieren. Wie schreibe ich die Felder dafür?
class Sign_up(models.Model):
first_name = models.CharField(max_length=40)
last_name = models.CharField(max_length=40)
email_id = models.CharField(max_length=30)
user_name = models.CharField(max_length=10)
password = models.CharField(max_length=10)
class Login(models.Model):
log_id = models.ForeignKey(Sign_up)
user_name = ???????????
Antworten:
0 für die Antwort № 1Wie ein Kommentar vermuten lässt, sollten Sie sich mit der Normalisierung der Datenbank vertraut machen. Die richtige Frage ist nicht, wie man Daten von einem Modell in ein anderes kopiert, sondern wie man Modelle "verknüpft".
Daher würde ich Ihnen empfehlen, ein Feld zu beiden Modellen hinzuzufügen als:
from django.contrib.auth.models import User
...
user = models.ForeignKey(User)
Dann müssten Sie wie folgt auf dieses Feld zugreifen:
Login.objects.get(pk=1).user.username
Ich würde auch das empfehlen Django-Dokumentation: Fragen stellen.