【问题标题】:Django adding letters and numbers to imageField urlDjango将字母和数字添加到imageField url
【发布时间】:2019-09-09 18:39:16
【问题描述】:

我在 django 模型中有一个 ImageField

image = models.ImageField(upload_to='images')

我的媒体根在 settings.py 中是这样设置的

MEDIA_ROOT = '/art/'

但是当我为 Imagefield 上传选择一个 gif url 时,该 url 不会保存为 /art/images

当我上传存储在art/images/Barnie.gif 的 gif "Barnie.gif" 的 url 时,我在 Django Admin 中收到此错误消息

Art with ID "1/change/images/Barnie_L2fAl.gif" doesn't exist. Perhaps it was deleted?

【问题讨论】:

    标签: django-models imagefield


    【解决方案1】:

    我遇到了同样的问题。我通过添加以下导入解决了它:

    from django.conf import settings
    from django.conf.urls.static import static
    

    我还添加了以下urlpatterns

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

    【讨论】:

      【解决方案2】:

      我想避免不做所有配置的事情,但你必须这样做。

      在我的基础应用 urls.py 中我添加了:

      from django.conf import settings
      from django.conf.urls.static import static
      

      在我添加的网址列表的末尾:

      + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
      

      然后在我的 settings.py 中添加:

      MEDIA_ROOT = os.path.join(BASE_DIR, '/art/images')
      
      MEDIA_URL = '/images/'
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-11-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-25
        • 1970-01-01
        相关资源
        最近更新 更多