上传图片组件
Project description
django_imguploder
👍 后台上传图片
⚡️ 单图片、多图片批量上传
✨ 图片大图预览、删除
🌈 效果图片
安装
pip install django-imgwidget
主页: https://pypi.org/project/django-imgwidget
步骤
-
在settings.py中加入
django_imguploder -
配置上传图片路由
path("upload", ImageUploadView.as_view(), name='upload_image')
- 编写视图函数 example
class ImageUploadView(views.View):
def post(self, request):
files = request.FILES or {}
files = list(files.values())
image_list = []
for file in files:
img_url = FileUploadManager.upload(file)
if img_url:
image_list.append(img_url)
return JsonResponse({"code": code, 'msg': msg, 'data': {"image_list": image_list}})
- 使用组件 example
models.py:
imgs = models.TextField(default="", null=False, verbose_name='图片')
certificate_imgs = models.TextField(default="", verbose_name='认证图片')
admin:
class UploadImgsForm(ModelForm):
imgs = forms.CharField(label="图片", widget=MultiImagesInputWidget, required=False)
certificate_imgs = forms.CharField(label="认证图片", widget=MultiImagesInputWidget, required=False)
class MyAdmin(admin.ModelAdmin):
...
form = UploadImgsForm
- 如果想保存为json格式,例如:['111.jpg', '222.jpg']
def save_model(self, request, obj, form, change):
for img in ['imgs', 'certificate_imgs']:
setattr(obj, img, json.dumps(get_imgs_value(form.cleaned_data.get(img))))
return super(MyAdmin, self).save_model(request, obj, form, change)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
django-imgwidget-0.0.2.2.tar.gz
(45.0 kB
view details)
File details
Details for the file django-imgwidget-0.0.2.2.tar.gz.
File metadata
- Download URL: django-imgwidget-0.0.2.2.tar.gz
- Upload date:
- Size: 45.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c410f53f52027b64f1c99a3900b4589429b8e056b5d0ad6b3c33348973acc05f
|
|
| MD5 |
4fb62f7c54764ca463a56ea8e24aff51
|
|
| BLAKE2b-256 |
80b888f5ae29739d034f94242da5ce122b111e2a50c0c001faf3604a026b1b43
|