Le modèle utilisateur est le suivant.
class User(AbstractUser): username = None email = models.EmailField('email address', unique=True) first_name = models.CharField('First Name', max_length=255, blank=True, null=False) last_name = models.CharField('Last Name', max_length=255, blank=True, null=False) objects = UserManager() USERNAME_FIELD = 'email' REQUIRED_FIELDS = ['username']
Le modèle de profil utilisateur est le suivant.
class UserProfile(models.Model): user = models.OneToOneField(User, related_name='profile', on_delete=models.CASCADE) avatar = models.ImageField(upload_to=avatar_image, blank=True, null=True)
Cela a du sens. Veuillez noter que Django utilise la bibliothèque
PIL
pour traiter les imagesDans votre environnement virtuel
pip 安装pillow
Dans votremodels.py
Les images sont traitées comme des fichiers statiques. La gestion des fichiers statiques est décrite ici