Python 进步<;输入类型=“;文件”&燃气轮机;按submit键时转到其他表单
这一切都很好,但我想做的是,我上传的文件名存储在一个隐藏的输入类型中,这样当我提交带有文本字段的表单时,图像的名称可以提交到数据库 我注意到,当我将主表单提交到数据库时,图像已保存到数据库中。我可以将其保存在名为“media”的临时文件夹中。但是,无论何时编辑表单,都无法再检索图像 我的问题是如何将上传文件的数据传递到其他表单 这是我的newclaim.html(提交收据的表格)Python 进步<;输入类型=“;文件”&燃气轮机;按submit键时转到其他表单,python,django,Python,Django,这一切都很好,但我想做的是,我上传的文件名存储在一个隐藏的输入类型中,这样当我提交带有文本字段的表单时,图像的名称可以提交到数据库 我注意到,当我将主表单提交到数据库时,图像已保存到数据库中。我可以将其保存在名为“media”的临时文件夹中。但是,无论何时编辑表单,都无法再检索图像 我的问题是如何将上传文件的数据传递到其他表单 这是我的newclaim.html(提交收据的表格) 这回答了你的问题吗?您不能这样做(出于安全原因)。相反,请尝试按照Django采用的方法,使用复选框显示当前上载的文
这回答了你的问题吗?您不能这样做(出于安全原因)。相反,请尝试按照Django采用的方法,使用复选框显示当前上载的文件名,并允许用户在需要时清除文件。你是什么意思?
<form action="/newclaim/" method="post" enctype="multipart/form-data">
<div>
<input id="receipt" type="file" name="receipt_field">
</div>
</form>
<form method="POST" action="/editclaims/{{claims.id}}" enctype="multipart/form-data">
<div>
<input id="receipt" type="file" value="receipt" hidden>
<label for="receipt"> {{ claims.receipt }} </label>
</div>
</form>
# Submit a new Claim
def newclaim(request):
context = initialize_context(request)
user = context['user']
if request.method == 'POST':
receipt = request.FILES['receipt_field']
ins.save()
return render(request, 'Login/newclaim.html/', {'user':user})
# Edit a claim
def editclaims(request,id):
context = initialize_context(request)
user = context['user']
# get original object
claims = SaveClaimForm.objects.get(id=id)
if request.method == 'POST':
claims.receipt = request.FILES.get('receipt')
# save it with original `ID`
claims.save()
return render(request, "Login/editclaims.html", {'claims':claims, 'user':user})