• 1403/08/29

پیدا نشدن عکس برای سرو کردن :

سلام زمانی که میخوام عکس هارو سرو کنم و داخل صفحه نشون بدم عکس هارو پیدا نمیکنه و 404 میده کد رو هرچقدر برسی میکنم متوجه مشکلی نمیشم اگر بگین مشکل کجاست ممنون میشم
محل ذخیره شده ی عکس ها:
uploads  /  images  /  BASE_DIR 

settings.py
MEDIA_ROOT = BASE_DIR / 'uploads'  
MEDIA_URL = '/media/'
urls.py:
urlpatterns = urlpatterns + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
html:
<ul>
    {% for profile in profiles %}
        <li>
            <img src="{{ profile.image.url }}" alt="" width="150">
        </li>
    {% endfor %}

</ul>

models:
class CreateProfile(models.Model):
    image = models.ImageField(upload_to='images')

وقتی میخوایم عکس آپلود کنیم مشکلی نداره ولی وقتی میخواد عکس رو سرو کنه و نشون بده 404 برمیگردونه 
/media/images/Screenshot_7.png
اینجا دنباله عکس میگرده که با کدمون باید همینجا هم باشه ولی پیدا نمیکنه
ممنون میشم راهنمایی کنید

  • 1403/08/30
  • ساعت 09:59

سلام خدمت شما دوست عزیز

برای گزینه های مربوط به STATIC_ROOT و MEDIA_ROOT از ساختار os.path.join استفاده کنین دوست من

MEDIA_ROOT = os.path.join(BASE_DIR, 'uploads', 'images')

  • 1403/08/30
  • ساعت 10:22

وقتی از <img src="{{ profile.image.url }}" alt="" width="400"> استفاده میکنیم میره توی http://127.0.0.1:8000/media/images/Screenshot_48.png این مسیر دنبالش میگرده ولی وقتی از <img src="media/{{ profile.image }}" alt="" width="400">#} استفاده میکنیم میره توی این مسیر میگیرده که درسته http://127.0.0.1:8000/contact-us/media/images/Screenshot_48.png  چرا این اتفاق میفته؟ چجوری باید با همون ساختار {{ profile.image.url }} کاری کنم که بره توی مسیر درست؟ صرفا برای اینکه متوجهش بشم میپرسم


  • 1403/08/30
  • ساعت 11:31

یک اشتباهی توی ذخیره سازی تصویر در دیتابیس شما وجود داشته دوست من

یک بار با همین تنظیماتی که خدمتتون عرض کردم ، تمامی تصاویر رو پاک کنین و مجدد بارگزاری کنین

آدرس تمامی فایل های media شما باید با /media/ شروع بشه


logo-samandehi