Django实现网页显示上传图片
时间: 2023-11-26 21:06:48 浏览: 84
要实现Django网页显示上传图片,可以按照以下步骤操作:
1. 在Django中创建一个视图函数,用来处理图片上传和显示。
2. 在Django的urls.py文件中,将该视图函数的URL路径映射到一个URL。
3. 在HTML模板中,添加一个表单,用于上传图片。
4. 在该表单中,指定表单的enctype属性为"multipart/form-data",这样才能上传文件。
5. 在表单中添加一个input元素,type属性为"file",表示上传文件的输入框。
6. 在视图函数中,获取上传的图片,并将其保存到服务器的某个文件夹中。
7. 在HTML模板中,将图片的URL路径插入到img标签的src属性中,从而实现图片的显示。
下面是一个简单的Django视图函数代码示例:
```python
from django.shortcuts import render
from django.conf import settings
from django.core.files.storage import FileSystemStorage
def upload(request):
if request.method == 'POST' and request.FILES['image']:
image = request.FILES['image']
fs = FileSystemStorage()
filename = fs.save(image.name, image)
uploaded_file_url = fs.url(filename)
return render(request, 'upload.html', {'uploaded_file_url': uploaded_file_url})
return render(request, 'upload.html')
```
在上面的代码中,我们首先判断请求的方法是否为POST,并且是否包含名为"image"的文件。如果是,则将文件保存到服务器上的某个文件夹中,并将其URL路径传递给模板渲染。如果不是,则直接渲染上传页面。
阅读全文