Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Melayan Imej yang Dimuat Naik dengan MEDIA_URL dan MEDIA_ROOT Django?
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!