我正在开发Django 1.6中的应用程序,并想知道我通过管理界面上传的照片是否是Django术语中的“静态文件”。
我有这个型号:
from django.db import models
class ShowroomDetail(models.Model):
title = models.CharField(max_length=1000)
description = models.CharField(max_length=4000)
class ShowroomPhoto(models.Model):
showroom = models.ForeignKey(ShowroomDetail, related_name='photos')
photo = models.ImageField(upload_to='images/')
我用它作为开发页面的基础,其中可以有一个或多个图像与标题和描述一起显示。图像将仅由管理界面上传,并且可以在以后添加该页面的更多照片。
这些上传的照片是“静态文件”吗?
答案 0 :(得分:4)
没有。通过网站上传的图像将存储在MEDIA_ROOT
文件夹中。它被认为是媒体文件而不是静态文件。对于您的示例,如果MEDIA_ROOT = '/path/to/project/media/
,则您的照片将存储在media/images/
。
不同之处是 staticfiles 将为每个应用程序收集,并且是代码的一部分。通常它是设计的图像,CSS文件,Javascript等。它们运行项目。
媒体文件是通过管理或用户通过特殊应用程序上传的文件,以添加内容(头像,图库图片,邮件附件......)。此内容独立于项目代码,并被视为内容。
相关:What is the difference between static files and media files in Django?
答案 1 :(得分:-1)
“静态文件”作为术语,是指静态文件以及为其配置的位置。如果您将静态文件上载到静态文件使用的位置,则可以找到上载的文件。显然,安全问题比比皆是。