我是 Django 和前端技术的新手,试图构建一个 Django Web 应用程序,用户在其中上传图像,查看完整图像并仅在客户端裁剪相同的图像。服务器端将只接收原始未裁剪的图像并裁剪所选裁剪框用户的坐标(x,y,宽度,高度)。我已经阅读了几个使用cropper.js的教程,但我无法弄清楚这样做的正确方法是什么?
目前用户可以浏览和上传图像文件,然后将其保存在数据库(文件路径)中。
我的文件如下
表格.py
from django import forms
class ImageUploadForm(forms.Form):
image = forms.ImageField()
模型.py
from django.db import models
class ImageModel(models.Model):
image = models.ImageField(upload_to = 'media/')
视图.py
from django.shortcuts import render
from .models import ImageModel
from .forms import ImageUploadForm
def upload(request):
if request.method == 'POST':
form = ImageUploadForm(request.POST, request.FILES)
if form.is_valid():
p = ImageModel(image = request.FILES['image'])
p.save()
return render(request, 'abc.html')
else :
form = ImageUploadForm()
return render(request, 'index.html', {'form': form})
模板 index.html
<body>
<table>
<tr>
<td>
<form action="" method="POST" enctype="multipart/form-data">
<p>
{{form}}
</p>
<br />
<input type="submit" value="Upload File" />
</form>
</td>
</tr>
</body>
我发现此问题已回答此代码片段,但无法理解如何与现有的 django 应用程序集成。cropper.js 上传带有坐标的原始图像
提前致谢。