我正在 Windows 上使用 Python Django 开发一个应用程序 我正在尝试将图像上传字段添加到我的一个类中,但出现错误,我不得不提到我需要提供 settings.py 的相对路径这样我就可以轻松地将我的代码迁移到另一个平台
我应该如何在 settings.py 中填充以下变量才能使它们工作
MEDIA_ROOT = #root to my project
MEDIA_URL = #url
在 models.py 中我有
class ProdcutImage(models.Model):
product = models.ForeignKey(Product)
image = models.ImageField(upload_to = "/products" )
我需要将图片上传到这个文件夹中:
"MY_PROJECT_ADDRESS/static/images/products"
我们将不胜感激
最佳答案
我建议你遵循这个答案
Need a minimal Django file upload example
最好将您的上传文件转到与静态不同的目录,但如果您想将其上传到此目录:
class ProdcutImage(models.Model):
product = models.ForeignKey(Product)
image = models.ImageField(upload_to = "static/images/products" )
设置.py
import os
PROJECT_ROOT = os.path.realpath(os.path.dirname(__file__))
MEDIA_ROOT = PROJECT_ROOT + '/static/images/products/'
MEDIA_URL = '/media/' #put whatever you want that when url is rendered it will be /media/imagename.jpg
在 urls.py 中
from django.conf.urls.static import static
from django.conf import settings
+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) #at the end
关于python - 处理上传图片 django admin python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22570723/