В базе данных django хранимое изображение не отображается в приложении, и у меня нет ошибки при выполнении кода
У меня нет ошибки при выполнении кода, изображения сохраняются в базе данных, но не отображаются на веб-странице, я размещаю свой исходный код здесь код страницы моего приложения
{% extends 'shop/layouts/main.html' %}
{% block title %} регистрация | onlineshopping {% endblock title %}
{% block content %}
<section class="py-5 text-center container" style="margin-top: 70px;">
<div class="row py-lg-5">
<div class="col-lg-6 col-md-8 mx-auto">
<h1 class="fw-light">Bestsellers</h1>
<p class="lead text-muted">Our most popular products based on sales.updated honourly</p>
<p>
<a href="#" class="btn btn-primary my-2">Already User</a>
<a href="#" class="btn btn-secondary my-2">Register</a>
</p>
</div>
</div>
</section>
<section class="bg-light py-4 my-5">
<div class="container">
<div class="row">
<div class="col-12">
<h4 class="mb-3">Categories</h4>
<hr style="border-color:#b8bfc2">
</div>
{% for item in category %}
<div class="col-md-4 col-lg-3">
<div class="card my-3">
<img src="{{item.image.url}}" class="card-image-top" alt="Categories">
<div class="card-body">
<h5 class="card-title text-primary">{{item.name}}</h5>
<p class="card-text">{{ item.description }}</p>
<a href="" class="btn btn-primary btn-sm">View Details</a>
</div>
</div>
</div>
{% endfor %}
</div>
</div>
</section>
{% endblock content %}
models.pycode
from django.db import models
import datetime
import os
def getFileName(request,filename):
now_time=datetime.datetime.now().strftime("%Y%m%d%H:%M:%S")
new_filename="%s%s"%(now_time,filename)
return os.path.join('uploads/',new_filename)
# Create your models here.
class Catagory(models.Model):
name=models.CharField(max_length=150,null=False,blank=False)
image=models.ImageField(upload_to=getFileName,null=True,blank=True)
description=models.TextField(max_length=500,null=False,blank=False)
status=models.BooleanField(default=False,help_text="0-show,1-Hidden")
created_at=models.DateTimeField(auto_now_add=True)
def __str__(self) :
return self.name
class Product(models.Model):
catagory=models.ForeignKey(Catagory,on_delete=models.CASCADE)
name=models.CharField(max_length=150,null=False,blank=False)
vendor=models.CharField(max_length=150,null=False,blank=False)
product_image=models.ImageField(upload_to=getFileName,null=True,blank=True)
quantity=models.IntegerField(null=False,blank=False)
original_price=models.FloatField(null=False,blank=False)
selling_price=models.FloatField(null=False,blank=False)
description=models.TextField(max_length=500,null=False,blank=False)
status=models.BooleanField(default=False,help_text="0-show,1-Hidden")
trending=models.BooleanField(default=False,help_text="0-default,1-Trending")
created_at=models.DateTimeField(auto_now_add=True)
def __str__(self) :
return self.name
файл setting.py
url.py
"""karthi_django URL Configuration
The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/4.1/topics/http/urls/
Examples:
Function views
1. Add an import: from my_app import views
2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
1. Add an import: from other_app.views import Home
2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
1. Import the include() function: from django.urls import include, path
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path,include
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path("admin/", admin.site.urls),
path('',include("shop.urls")),
]
if settings.DEBUG:
urlpatterns+=static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
view.py
from django.shortcuts import render
from . models import *
# Create your views here.
def home(request):
return render(request, "shop/index.html")
def register(request):
return render(request, "shop/register.html")
def collections(request):
catagory=Catagory.objects.filter(status=0)
return render(request,'shop/collections.html',{"catagory":catagory})
admin.py
from django.contrib import admin
from.models import *
admin.site.register(Catagory)
admin.site.register(Product)
MEDIA_URL = "images/"
удалите начальный слэш из MEDIA_URL.