Я не понимаю, почему вы возвращаете объекты внутри цикла for, это приводит к тому, что в шаблоне отображается только одно изображение.Вместо этого вы можете передать все объекты изображения в шаблоне, а затем перебрать объекты в шаблоне для отображения изображений.
Вы можете изменить свой вид как:
def display(request):
myimages_objs = Images.objects.all() # get all the images
return render(request, 'index.html', {'myimages_objs':myimages_objs})
Затем в вашем шаблоне:
<div class="divi">
{% for item in myimages_objs %} //loop through all the images
<img src="{{ item.image.url }}" alt="image">
{% endfor %}
</div>
Редактировать:
Изменить upload_to на upload_to = "images /".
Насколько мне известно, ваши изображения не сохраняются в папке images
, поскольку вы пропустили обратную косую черту (которая представляет собой имя папки).Таким образом, изображения сохраняются в папке media
.
Но URL-адрес изображения похож на project_path/media/images/something.jpg
, который не может быть найден, так как изображения не сохраняются в папке images
.
Измените поле, как указано для новых изображений, которые будут сохранены в указанной папке.Для старых изображений скопируйте их в папку изображений вручную.
Надеюсь, это поможет.