Heim  >  Artikel  >  Backend-Entwicklung  >  Einführung in die Implementierung der Funktion zur Überprüfung hochgeladener Bilder durch Django Admin

Einführung in die Implementierung der Funktion zur Überprüfung hochgeladener Bilder durch Django Admin

高洛峰
高洛峰Original
2017-03-07 16:02:501835Durchsuche

Django bietet viele Funktionen für zukünftige Entwickler: eine ausgereifte Standardbibliothek, eine aktive Benutzergemeinschaft und alle Vorteile der Python-Sprache. Während andere Web-Frameworks behaupten, dasselbe zu bieten, ist Django insofern einzigartig, als es über eine integrierte Verwaltungsanwendung verfügt – admin.

admin bietet sofort erweiterte CRUD-Funktionen (Create-Read-Update-Delete) und reduziert so den Zeitaufwand für die Duplizierung von Arbeiten. Dies ist für viele Webanwendungen von entscheidender Bedeutung, da Programmierer ihre Datenbankmodelle während der Entwicklung schnell durchsuchen können. Endbenutzer ohne technische Kenntnisse können den Administrator verwenden, um Website-Inhalte während der Bereitstellung hinzuzufügen und zu bearbeiten.

In meinen Modellen gibt es ein ImageField-Feld, das zum Speichern von Benutzeravataren verwendet wird. Ich hoffe, die Größe des Avatars beim Hochladen über Django Admin zu überprüfen. Wenn es zu groß ist, wird ein Fehler gemeldet es wird nicht gespeichert.

Es gibt viele Methoden im Internet, einige werden durch Software von Drittanbietern implementiert, andere werden meiner Meinung nach durch das Schreiben von Formularen selbst überprüft und die Anforderungen sind nicht hoch einfachste Methode.

Die folgende Methode besteht darin, die Bildgröße zu überprüfen, indem save_model() von admin.ModelAdmin überschrieben wird. Wenn das Bild größer als 20 KB ist, wird ein Fehler gemeldet und nicht gespeichert:

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, 'The picture\'s too large. It\'s supposed smaller than 20K.')
else:
obj.save()

Zum Schluss zeigen wir die implementierte Django-Website. Vielen Dank an Andrew Liu für sein Online-Tutorial:

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

Der obige Inhalt stellt Ihnen die Implementierung der hochgeladenen Bildkorrektur durch Django Admin vor. Ich hoffe, dies hilft Ihnen bei den relevanten Kenntnissen der Testfunktion!

Weitere verwandte Artikel, in denen die Funktion zur Überprüfung hochgeladener Bilder von Django Admin vorgestellt wird, finden Sie auf der chinesischen PHP-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