Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Melayan Imej yang Dimuat Naik dengan MEDIA_URL dan MEDIA_ROOT Django?

Bagaimana untuk Melayan Imej yang Dimuat Naik dengan MEDIA_URL dan MEDIA_ROOT Django?

Patricia Arquette
Patricia Arquetteasal
2024-11-17 02:45:03382semak imbas

How to Serve Uploaded Images with Django's MEDIA_URL and MEDIA_ROOT?

MEDIA_URL dan MEDIA_ROOT Django: Menyelesaikan Isu Akses Imej

Dalam Django, tetapan MEDIA_URL dan MEDIA_ROOT memainkan peranan penting dalam mengurus fail dan mengurus melayani mereka ke bahagian hadapan. Senario biasa ialah memuat naik imej menggunakan pentadbir Django dan kemudian mengaksesnya sama ada melalui URL atau halaman hadapan.

Berikutan isu yang dikemukakan, di mana muat naik disimpan dengan betul tetapi akses URL mengakibatkan ralat 404 , kami boleh menggunakan corak URLconf untuk menyelesaikan isu ini.

Penyelesaian untuk Django 1.7 dan Di atas

Seperti dokumentasi Django 2.1, menambahkan coretan berikut pada konfigurasi URL anda akan mengendalikan penyajian fail statik, termasuk media yang dimuat naik, semasa pembangunan:

from django.conf.urls.static import static
urlpatterns = patterns(...) + static(MEDIA_URL, document_root=MEDIA_ROOT)

Penyelesaian untuk Django 1.6 dan Bawah

Untuk yang lebih lama versi Django, URLconf berikut boleh dikonfigurasikan untuk menyediakan media statik:

from django.conf.urls.patterns import patterns, url
from django.views.static import serve
if settings.DEBUG:
    urlpatterns += patterns('',
        url(r'^media/(?P<path>.*)$', serve, {'document_root': MEDIA_ROOT}))

Dengan menambahkan konfigurasi ini, Django akan menyampaikan fail statik apabila DEBUG = True (pada mesin tempatan) semasa pembangunan. Walau bagaimanapun, untuk pengeluaran, pelayan web boleh dikonfigurasikan untuk mengendalikan siaran media statik apabila DEBUG = False.

Penyelesaian ini membolehkan anda berjaya memuat naik dan mengakses imej pada mesin tempatan menggunakan tetapan MEDIA_URL dan MEDIA_ROOT Django.

Atas ialah kandungan terperinci Bagaimana untuk Melayan Imej yang Dimuat Naik dengan MEDIA_URL dan MEDIA_ROOT Django?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn