>  기사  >  백엔드 개발  >  Django Admin의 업로드 이미지 확인 기능 구현 소개

Django Admin의 업로드 이미지 확인 기능 구현 소개

高洛峰
高洛峰원래의
2017-03-07 16:02:501840검색

Django는 미래의 개발자를 위해 성숙한 표준 라이브러리, 활발한 사용자 커뮤니티, Python 언어의 모든 이점 등 다양한 기능을 제공합니다. 다른 웹 프레임워크가 동일한 기능을 제공한다고 주장하는 반면, Django에는 관리 애플리케이션인 admin이 내장되어 있다는 점에서 독특합니다.

admin은 기본적으로 고급 CRUD(만들기-읽기-업데이트-삭제) 기능을 제공하여 작업 복제에 필요한 시간을 줄여줍니다. 프로그래머가 개발 중에 데이터베이스 모델을 빠르게 검색할 수 있기 때문에 이는 많은 웹 응용 프로그램의 핵심입니다. 기술 지식이 없는 최종 사용자는 배포 중에 관리자를 사용하여 사이트 콘텐츠를 추가하고 편집할 수 있습니다.

내 모델에는 사용자 아바타를 저장하는 데 사용되는 ImageField 필드가 있습니다. Django 관리자를 통해 업로드할 때 아바타의 크기를 확인하고 싶습니다. 너무 크면 오류가 발생합니다. 저장되지 않습니다.

인터넷에는 많은 방법이 있는데, 일부는 타사 소프트웨어를 통해 구현되고, 일부는 직접 양식을 작성하여 확인하는 경우도 있고, 요구 사항도 높지 않은 것 같습니다. 가장 간단한 방법.

다음 방법은 admin.ModelAdmin의 save_model()을 재정의하여 이미지 크기를 확인하는 것입니다. 이미지가 20K보다 크면 오류가 보고되고 저장되지 않습니다.

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()

마지막으로 구현된 Django 웹사이트를 보여드리겠습니다. Andrew Liu의 온라인 튜토리얼 덕분입니다:

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

위 내용에서는 구현하는 Django Admin을 소개합니다. 업로드된 이미지 확인 기능, 모두에게 도움이 되었으면 좋겠습니다!

Django Admin의 업로드 이미지 확인 기능을 소개하는 더 많은 관련 글은 PHP 중국어 홈페이지를 주목해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.