如何从django管理面板上传图像文件?

时间:2016-09-05 11:01:32

标签: python django file-upload django-models django-admin

我正在使用django 1.10制作个人网站 我想从管理员上传我的网站徽标,以便我将来可以编辑它。所以我写了网站应用程序,网站的模型是:

来自将来导入unicode_literals

来自django.db导入模型

# Create your models here.
class Website(models.Model):
    title = models.CharField(max_length=255)
    name = models.CharField(max_length=255)
    logo = models.ImageField(max_length=255, upload_to='images/')

    def __unicode__(self):
        return self.name

    def __str__(self):
        return self.name

管理员面板: enter image description here

但图片未上传到media/images文件夹中。 请帮我解决这个问题。

2 个答案:

答案 0 :(得分:2)

最后,我解决了这个问题,我不得不改变urls.py:

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

    urlpatterns = [
        url(r'^', include("website.urls", namespace='home')),
        url(r'^admin/', admin.site.urls),

    ]

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

答案 1 :(得分:0)

如果我在settings.py中更改了它,它会保存在项目文件夹中:

在:

b

后:

MEDIA_URL = "/media/"
MEDIA_ROOT = os.path.join(os.path.dirname(BASE_DIR), "media_cdn")