Heim >Backend-Entwicklung >Python-Tutorial >Einführung in die Verwendung von User-Profile im Django-Tutorial (Quellcode im Anhang)

Einführung in die Verwendung von User-Profile im Django-Tutorial (Quellcode im Anhang)

不言
不言Original
2018-09-15 14:23:562383Durchsuche

Dieser Artikel bietet Ihnen eine Einführung in die Verwendung von User-Profile im Django-Tutorial (Quellcode beigefügt). Ich hoffe, dass er für Sie hilfreich ist.

Profilfunktion: Die integrierten Felder des Benutzers sind nicht perfekt genug, um ein einzelnes Benutzerprofil zu erweitern, das heißt, Benutzerinformationen zu erstellen Profilklasse in Modellen und Feldern hinzufügen. Benutzer bildet eine OneToOne-Beziehung mit Benutzer und kaskadiert Löschung

on_delete=models.CASCADE

Führt signalbezogene Pakete ein

from django.dispatch import receiverfrom django.db.models.signals import post_save

Dekorationsfunktion, das Signal wird ausgelöst, wenn der Benutzer erstellt wird, und das Benutzerfeld des Profils wird automatisch erstellt und verknüpft. Das Signal wird ausgelöst, wenn der Benutzer gespeichert wird, und das Profil wird automatisch gespeichert

Quellcode

from django.db import models
from django.contrib.auth.models import User
#信号
from django.db.models.signals import post_save,post_init
from django.dispatch import receiver
class Profile(models.Model):
    user = models.OneToOneField(User,on_delete=models.CASCADE)
    birth = models.DateField(null=True,blank=True)
    def __str__(self):
        return self.user.username
    class Meta:
        db_table = 'profile'
@receiver(post_save,sender=User)
def create_user_profile(sender,instance,created,**kwargs):
    print('创建User')
    if created:
        Profile.objects.create(user=instance)
@receiver(post_save,sender=User)
def save_user_profile(sender,instance,**kwargs):
    print('保存User')
    instance.profile.save()

Verwandte Empfehlungen:

So verwenden Sie ein Benutzerobjekt in einer Django-Sitzung


Lernen Sie in fünf Schritten, wie Sie Nginx+uWSGI+Django verwenden. Methode zum Bereitstellen des Django-Programms

Das obige ist der detaillierte Inhalt vonEinführung in die Verwendung von User-Profile im Django-Tutorial (Quellcode im Anhang). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn