Maison  >  Article  >  développement back-end  >  Introduction à l'implémentation par Django Admin de la fonction de vérification des images téléchargées

Introduction à l'implémentation par Django Admin de la fonction de vérification des images téléchargées

高洛峰
高洛峰original
2017-03-07 16:02:501836parcourir

Django propose de nombreuses fonctionnalités pour les futurs développeurs : une bibliothèque standard mature, une communauté d'utilisateurs active, et tous les avantages du langage Python. Alors que d'autres frameworks Web prétendent offrir la même chose, Django est unique en ce sens qu'il possède une application d'administration intégrée - admin.

admin fournit une fonctionnalité avancée de création-lecture-mise à jour-suppression (CRUD) prête à l'emploi, réduisant ainsi le temps nécessaire à la duplication du travail. Ceci est essentiel pour de nombreuses applications Web, car les programmeurs peuvent parcourir rapidement leurs modèles de base de données pendant le développement ; les utilisateurs finaux non techniques peuvent utiliser l'administrateur pour ajouter et modifier le contenu du site pendant le déploiement.

Il y a un champ ImageField dans mes modèles, qui est utilisé pour enregistrer les avatars des utilisateurs. J'espère vérifier la taille de l'avatar lors du téléchargement via Django Admin. S'il est trop grand, une erreur sera signalée et. il ne sera pas sauvegardé.

Il existe de nombreuses méthodes sur Internet, certaines sont mises en œuvre via des logiciels tiers et certaines sont vérifiées en rédigeant vous-même des formulaires. Je pense que c'est trop compliqué et les exigences ne sont pas élevées. méthode la plus simple.

La méthode suivante consiste à vérifier la taille de l'image en écrasant le save_model() de admin.ModelAdmin. Si l'image est supérieure à 20 Ko, une erreur sera signalée et non enregistrée :

<.>

from django.contrib import messages
class YourModeAdmin(admin.ModelAdmin):
...
def save_model(self, request, obj, form, change):
#不保存大图片
if obj.picture and obj.picture.size > 20480:
messages.set_level(request, messages.ERROR)
messages.error(request, &#39;The picture\&#39;s too large. It\&#39;s supposed smaller than 20K.&#39;)
else:
obj.save()

Enfin, montrons le site Web Django implémenté Merci à Andrew Liu pour son tutoriel en ligne :

Django Admin实现上传图片校验功能介绍

Le contenu ci-dessus. vous présente l'implémentation de la correction d'image téléchargée par Django Admin. J'espère que cela vous aidera avec les connaissances pertinentes de la fonction de test !

Pour plus d'articles sur l'implémentation par Django Admin de la fonction de vérification des images téléchargées, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn