J'ai un utilisateur avec une photo de profil. L'image sera convertie en deux tailles: une qui sera affichée pour son profil (environ 200 px de large) et une plus petite vignette qui sera affichée dans les résultats de recherche (environ 64 px de large).Plusieurs images liées au profil d'un utilisateur
Quelle serait la meilleure façon de construire la base de données et la structure de dossier pour cela?
Mes deux idées pour la structure db sont:
# 1)
class UserProfile(models.Model):
user = models.ForeignKey(User, unique=True)
...
avatar = models.ImageField(upload_to='images/%Y/%m/%d', blank=True,)
avatar_thumbnail = models.ImageField(upload_to='images/%Y/%m/%d', blank=True,)
# 2)
class UserProfile(models.Model):
user = models.ForeignKey(User, unique=True)
...
class Avatar(models.Model):
avatar = models.ImageField(upload_to='images/%Y/%m/%d')
user = models.ForeignKey(UserProfile)
Lequel serait une meilleure façon de gérer cette situation? Et quel serait un bon moyen de structurer mon dossier d'image pour séparer et référencer facilement les deux tailles d'image? Je vous remercie.
merci pour la réponse. Et comment organiseriez-vous la structure de fichier pour les deux images différentes? – David542
Theres deux écoles de pensée. Vous pouvez d'abord créer un dossier vignettes à côté de votre dossier images avec une structure de répertoire interne identique. Je préfère la seconde, qui serait de créer un répertoire de pouces à côté du fichier de votre vignette, et de garder les vignettes là-bas. quelque chose comme: upload_to = 'images /% Y /% m /% d/thumbs /' – Hutch
voulez-vous jamais créer un dossier séparé pour chaque utilisateur, par exemple, upload_to = 'images /% s /% Y /% m/% d/thumbs/'% (nom d'utilisateur)? – David542