我在这里看到了很多关于django中媒体文件的问题,但老实说,我找不到有效的解决方案。因此,我决定将环境简化为一个非常简单的应用程序。你可以在这里找到它:github项目我用django管理员创建了一个项目,我称之为“文档”,然后我创建了一个名为“文档”的应用程序。然后我定义了一个简单的类:
def get_path(instance, filename):
fn, ext = os.path.splitext(filename)
ts = str(int(time.time()))
return os.path.join('{}_{}{}'.format(fn, ts, ext))
class doc(models.Model):
doc_name = models.CharField(max_length=30, verbose_name=u"doc name", help_text=u"name of the doc")
doc_document = models.FileField(upload_to=get_path, verbose_name=u"document", help_text=u"document")
class Meta:
unique_together = ("doc_name", )
def __str__(self):
return f"{self.doc_name}"
这会更改文件名并添加时间戳。我还更改了URL.py文件,添加了以下内容:
path(r'', admin.site.urls),
现在的问题是:如果不使用media\u url和media\u root,是否有可能实现此功能?我已尝试添加一个文件,它可以工作:
并将文件正确地保存在项目的根目录中。但是,当我转到链接并单击时,我得到以下信息:
现在可以知道它在哪里查找文件了吗?你认为添加媒体url和媒体根目录会有帮助吗?我应该如何添加它?我已经试过了,但没有成功。
暂无答案!
目前还没有任何答案,快来回答吧!