如何解决在 django 中找不到媒体文件夹配置路径
我使用 MysqL 作为数据库。我想将我的 imagefield 文件上传到我在项目中创建的媒体文件夹中。我收到“空路径不存在”。
settings.py
MEDIA_ROOT = os.path.join(BASE_DIR,'media')
MEDIA_URL = '/media/'
models.py
class Product(models.Model):
category = models.ForeignKey(Category,related_name='product',on_delete=models.CASCADE)
created_by = models.ForeignKey(User,on_delete=models.CASCADE,related_name='product_creator')
title = models.CharField(max_length=255)
author = models.CharField(max_length=255,default='admin')
description = models.TextField(blank=True)
image = models.ImageField(upload_to='images/')
slug = models.SlugField(max_length=255)
price = models.DecimalField(max_digits=4,decimal_places=2)
in_stock = models.BooleanField(default=True)
is_active = models.BooleanField(default=True)
created = models.DateTimeField(auto_Now_add=True)
updated = models.DateTimeField(auto_Now=True)
class Meta:
verbose_name_plural = 'Products'
ordering = ('-created',)
def __str__(self):
return self.title
urls.py
from django.contrib import admin
from django.urls import path
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('admin/',admin.site.urls),]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
我已经在 admin.py 中成功注册了模型。
解决方法
您的代码:
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
测试一下:
urlpatterns += static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
,
我通过删除我之前添加的 settings.py 文件中的“MEDIA_URL”和“MEDIA_ROOT”路径来修复此错误。然后上面的代码就可以工作了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。