我们将看一下如何在 python django bootstrap 中上传多个图像的示例。
如果您想查看如何在 python django 示例中上传多个图像的示例,那么您来对地方了。

在这里,我简单地解释了如何在数据库中的 python django 中上传多个图像的分步示例。
第 1 步:创建项目
在这一步中,我们将使用 django-admin 创建一个新的 django 项目。返回命令行界面并运行以下命令:
django-admin startproject example
第 2 步:创建应用程序
python3 manage.py startapp multipleImage
第 3 步:更新 setting.py
在这一步中,我们需要在 settings.py 文件中做两件事,一是更改模板查找目录的路径。第二个是配置我们的媒体文件夹。将以下行添加到您的 settings.py 文件中:
接下来需要在settings.py文件中添加如下:
import os .... INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'multipleImage', ] .... TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, "templates")], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ] .... MEDIA_ROOT = os.path.join(BASE_DIR, "media") MEDIA_URL = "/media/"
第 4 步:数据库设置
下一步,我们将修改 settings.py 文件并更新数据库设置以配置 mydb 数据库: settings.py
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'example', 'USER':'root', 'PASSWORD':'root', 'HOST':'localhost', 'PORT':'3306' } }
第 5 步:创建模型
在这一步中,我们将需要用于存储联系人的数据库模型。打开 multipleImage/models.py 文件并添加以下代码: multipleImage/models.py
from django.db import models class MultipleImage(models.Model): images = models.FileField()
创建这些模型后,您需要使用以下命令创建迁移:
第 6 步:创建迁移
python manage.py makemigrations
成功运行上述命令后进入 multipleImage/migrations/0001_initial.py
multipleImage/migrations/0001_initial.py
# Generated by Django 4.0.5 on 2022-06-29 04:55 from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ ('blog', '0001_initial'), ] operations = [ migrations.CreateModel( name='MultipleImage', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('images', models.FileField(upload_to='')), ], ), ]
接下来,您需要使用以下命令迁移数据库:
python manage.py migrate
第 7 步:创建视图
在这一步中,我们需要创建视图来执行获取记录到数据库。打开 multipleImage/views.py 文件并添加:
multipleImage/views.py
from django.shortcuts import render from .models import MultipleImage from django.contrib import messages # Create your views here. def multipleUpload(request): imagesUpload = '' if request.method == "POST": images = request.FILES.getlist('images') for image in images: imagesUpload = MultipleImage.objects.create(images=image) images = MultipleImage.objects.all() if imagesUpload: messages.success(request, 'Image Upload Successfully') return render(request, 'index.html', {'images': images})
第 8 步:创建视图
接下来,打开 multipleImage/templates/index.html 文件并添加:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>How to Multiple image Upload in Python Django ?</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/css/bootstrap.min.css"> <script src="https://cdn.jsdelivr.net/npm/jquery@3.6.0/dist/jquery.slim.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/js/bootstrap.bundle.min.js"></script> </head> <body> <div class="container mt-5 pt-5"> <div class="row d-flex justify-content-center"> <div class="col-md-9"> {% if messages %} <div class="alert alert-success alert-dismissible"> <button type="button" class="close" data-dismiss="alert">×</button> {% for message in messages %} {{ message }} {% endfor %} </div> {% endif %} <div class="card"> <div class="card-header"> <h4>How to Multiple image Upload in Python Django ? - <span class="text-primary">Tuts-Station.com</span></h4> </div> <div class="card-body"> <form method = "post" enctype="multipart/form-data"> {% csrf_token %} <input type="file" class="form-control" name="images" multiple> <hr> <div class="row mt-2"> <div class="col-md-12 text-center"> <button type="submit" class="btn btn-success">Upload</button> </div> </div> </form> <hr> {% for img in images %} <img src="{{img.images.url}}" alt="Image" width="100" height="100" style="border: 1px solid black;"> {% endfor %} </div> </div> </div> </div> </div> </body> </html>
第 9 步:创建 URL
在本节中,我们将创建 url 来访问我们的视图。转到 urls.py multipleImage/urls.py 文件并按如下方式更新它:
multipleImage/urls.py
from django.contrib import admin from django.urls import path from django.conf import settings from multipleImage.views import * from django.conf.urls.static import static urlpatterns = [ path('admin/', admin.site.urls), path('image-upload', multipleUpload, name = 'multipleUpload'), ] if settings.DEBUG: urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
运行服务器
在这一步中,我们将运行本地开发服务器来玩我们的应用程序,而无需将其部署到网络上。
python manage.py runserver
接下来,使用 Web 浏览器访问 http://localhost:8000/ 地址。
希望对您用….
how-to-multiple-image-upload-in-python-django