首页 > 解决方案 > 如何在部署中提供通过用户在 Django 中添加的图像

问题描述

我在云上有一个 Django 电子商务应用程序。我已配置为从管理员添加产品和图像。它在开发服务器中工作正常,但在部署中不起作用。我在任何地方都找不到任何好的答案,谷歌似乎充满了关于提供静态文件的资源。一些答案是 apache 是必需的,但我使用 nginx,所以它是如何工作的。帮助将不胜感激..

模型.py

class Product(models.Model):
    name = models.CharField(max_length=150)
    price = models.PositiveIntegerField()
    category = models.ForeignKey(Category, on_delete=models.CASCADE, default=1)
    description = models.TextField(default='' , null=True , blank=True)
    image = models.ImageField(upload_to='uploads/products/')
    old_price = models.PositiveIntegerField(default=299)
    image2 = models.ImageField(upload_to='uploads/suits/', null=True, blank=True)
    image3 = models.ImageField(upload_to='uploads/suits/', null=True, blank=True)

    tags= ArrayField(models.CharField(max_length=20, blank=True, null=True))

settings.py 配置

MEDIA_URL = "/image/download/"
MEDIA_ROOT = BASE_DIR

网址.py

from django.contrib import admin
from django.urls import path, include
from django.conf.urls.static import static
from . import settings

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('store.urls')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

标签: pythondjangoapachee-commerce

解决方案


推荐阅读