【发布时间】:2019-01-02 03:10:09
【问题描述】:
我有一个图片库系统,我正在其中构建一个功能来编辑上传图片的属性。
@login_required
def edit(request):
if request.method == 'POST':
ZSN = request.POST['ZSN']
ZSN = 'images/' + ZSN + '.'
image = Images.objects.filter(file__startswith=ZSN)
if image:
return HttpResponseRedirect('/home/photo-edit', {'image':image})
else:
return HttpResponse("Invalid ZSN.")
else:
return render(request, 'cms/edit.html')
这是我在views.py 中的edit 方法。请注意,我将image 对象作为必须编辑其属性的图像。如果找到图像,那么我将重定向到主页/照片编辑,我想在其中显示一个 HTML 页面,其中包含一个 带有图像属性的表单,预填充现有属性。
home/photo-edit/ URL 的views.py 方法是
@login_required
def photoedit(request):
return render(request, 'cms/photo-edit.html', {'image':image})
但即使我将其从home/edit 发送到home/photo-edit,这里的图像也无法被识别。我该怎么做呢?他语法错了吗?
【问题讨论】:
-
您必须在实际发送之前以某种方式获取图像值。此值在您看来是未知的。
-
image = Images.objects.filter(file__startswith=ZSN) 这不是这样做的吗?
-
home/photo-edit/的正文根本没有它 - 它必须发生在def photoedit(request):和return之间的某个地方 -
是的,但也应该在照片编辑视图中获取。将此行添加到您的照片编辑中。 image = Images.objects.filter(file__startswith=ZSN)
-
但是 photoedit 不包含 ZSN,对吧?
标签: python html django django-models django-forms