Probleme pendant l'affichage de ma vue d'accueil du site e-commerce
Ma vue s'affiche bien à part mon image, j'ai bien revu la vidéo et j'ai bien modifier le fichier settings , urls et mis mon dossier products qui contient mes images dans un dossier media.
MEDIA_URL = "/media/"
MEDIA_ROOT = BASE_DIR / "media"
(settings.py)
from django.conf.urls.static import static
from django.contrib import admin
from django.urls import path
from store.views import index
from shop import settings
urlpatterns = [
path('', index, name='index'),
path('admin/', admin.site.urls),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
(urls.py)
{% extends 'base.html' %}
{% block content%}
<h1>La boutique de Docstring</h1>
{% for product in products %}
<h2>{{ product.name }}</h2>
<img src="{{ product.thumbnail.url }}" alt="{{ product.name }}" style="max-width: 250px;">
{% endfor %}
{% endblock %}
(index.html)
from django.http import HttpResponse
from django.shortcuts import render
from store.models import Product
def index(request):
products = Product.objects.all()
return render(request, 'store/index.html', context={"products": products})
(views.py)
Salut,
et dans ton model tu as bien un field image comme ceci ?
mon_image = models.FileField(upload_to='products/', default=None, blank=True)
en fait si tu veux utiliser media selon moi c'est parce que tu veux afficher une image que tu as upload via une form ou ton interface admin. Donc tu ne les places pas toi même dans ton dossier media/product , c'est quand tu vas faire l'upload que l'image va se mettre dedans.
Si tu veux afficher une image statique (i.e qui est là même si personne ne l'a upload, comme un logo sur ta page d'accueil par exemple) c'est dans les fichiers statiques qu'il faut la mettre.
salut Thibault !
j'aimerais savoir comment tu as deplacer le dossier product dans media .
comment tu fais pour faire glisser un dossier et le relacher sur un autre ?
Inscris-toi
(c'est gratuit !)
Tu dois créer un compte pour participer aux discussions.
Créer un compte