图像不存储在媒体文件夹中,而是创建一个文件夹并存储



我试图在我的应用程序媒体文件夹中上传一些图像。问题是图片上传成功,但不在媒体文件夹中。它创建另一个文件夹并存储它们的。我的代码细节如下:

urls . py

from django.contrib import admin
from django.urls import path
from ssibdweb import views
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
path('admin/', admin.site.urls),
path('', views.index, name='index'),
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIAFILES_DIRS)   

settings.py

MEDIA_DIR = BASE_DIR / 'media'
MEDIA_URL = '/media/'
MEDIAFILES_DIRS = [
STATIC_DIR,
]

models.py

class BlogImage(models.Model):
id = models.AutoField(primary_key=True)
sub_id = models.ForeignKey(Subject, on_delete=models.CASCADE)
pic = models.ImageField(upload_to='blog/')
def __str__(self):
return str(self.id)

我使用以下形式上传

<form method="POST" enctype="multipart/form-data" >

您试图通过settings.MEDIAFILES_DIRSinsidestatic()django.conf中不存在的函数设置您可以检查设置的可用常数。为了存储您上传的媒体内容,您必须设置MEDIA_ROOT

MEDIA_ROOT = BASE_DIR / 'media'

url .py像这样修改文件

if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

最新更新