从Django ForeignKey关系访问图片网址

时间:2015-05-09 19:18:37

标签: django image django-models django-templates django-views

我目前的模型定义方式与此相同:

class Object(models.Model):
    name = models.CharField(max_length=50)


class ObjectImage(models.Model):
    object = models.ForeignKey('Object', related_name='images')
    image = models.ImageField(upload_to='./objects')

我正在尝试访问每个对象的所有图像的网址,以便它们可以显示在模板中。我尝试将对象放在列表中,然后访问list [0] .images并返回“ProjectName.ObjectImage.None”。

有谁知道如何访问为Object类的每个实例保存的图像的URL?谢谢!

1 个答案:

答案 0 :(得分:0)

您只需要为模板提供Object即可访问ObjectImages。它们将以这种方式提供:

all_objects = Object.objects.all()
context = {'all_objects': all_objects}
render(render, your_template.html, context)

在你的模板中,像这样:

{% for each_object in all_objects %}

{% for each_image in each_object.objectimage_set.all %}

{{ each_image.image }}

{% endfor %}

{% endfor %}