【发布时间】:2020-07-08 04:10:27
【问题描述】:
我是 Django 初学者,如何获取表单上传的每张图片的 ID?
class Image(models.Model):
imageuploader_profile=models.ForeignKey(settings.AUTH_USER_MODEL)
upload_image=models.ImageField()
def upload(request):
if request.method == 'POST':
form=UploadForm(request.POST, request.FILES)
if form.is_valid():
post=form.save(commit=False)
post.imageuploader_profile=request.user
post.save()
return redirect....
else:
form=UploadForm
return render......
view.py
def home(request) :
all_images=Image objects.filter(imageuploader_profile=request.user)
context={'all_images':all_images}
return render(request, 'home.html', context)
我的家.html
{% for post in all_images %}
{% if post upload_images %}
<img src="{{ post upload_image.url }}">
{% endif %}
{% endfor%}
我想获取模板中的所有 ID。
【问题讨论】:
-
所以你想要
Image.objects.filter(uploaded_via='form')这样的东西?然后你需要存储图像被保存/创建的信息。如果您只想获取所有图像(因为您只按表单保存它们),那么您可以使用images = Image.objects.all()。 -
@zypro... 你能用我的问题中的表格更新你的答案吗?我似乎对如何获取通过表单上传的每张图片的 ID 感到困惑。你从哪里得到“uploaded_via”?
-
问题是,您在哪里需要所有图像?你想用这个查询集做什么?然后我可以更新你的代码。还是只需要当前上传的图片ID?
-
@zypro... 我想上传一张将显示在主页上的图片,我可以做到。但我现在想要的是获取我使用表单上传的每张图片的 ID。
-
您还不清楚,请准确说明您想要什么所需的输出,例如(我想要用户在我的模板中上传的每个图像 ID 的列表)