хорошо, если вы хотите отображать изображения из базы данных, вы должны выполнить следующие шаги:
1 - перейдите в файл settings.py и напишите этот код,
MEDIA_ROOT= os.path.join(BASE_DIR,"media")
MEDIA_URL= "/media/"
2 - затемсоздайте новую папку в вашем проекте под названием «media» и создайте папку внутри «media» под названием «images» (в итоге результат будет похож на этот «media / images»)
3 - перейдите в файл model.py в вашемкласс, у которого есть 'img_photo'
, и вы должны написать такую модель
class Images(models.Model):
img_photo = models.ImageField(upload_to='images/',null=True, blank=True)
def get_image(self):
if self.img_photo and hasattr(self.img_photo, 'url'):
return self.img_photo.url
else:
return '/path/to/default/image'
def __str__(self):
return self.img_photo
4 - перейдите в admin.py, затем напишите:
from yourapp.models import Images
и добавьтеэту строку ниже
admin.site.register (Images)
, затем откройте свой терминал или консоль и напишите:
1- python manage.py makemigrations
2- python manage.py migrate
5- в html-коде, который вы должны написать:
{% for image in Images %}
<img src="{{ image.get_image }}" >
{% endfor %}
- зайдите в админ-панель и загрузите любую фотографию для теста