无法在Django Admin中打开已保存的文件

Saw*_*wwy 3 django admin file http-status-code-404

我可以通过Django admin在我的一个模型中成功保存文件但是无法打开文件.这是我的模型:

class Answer (models.Model):
    answer = models.CharField(max_length=1000)
    attach_file = models.FileField(upload_to='Attachments', blank=True)
Run Code Online (Sandbox Code Playgroud)

我没有触及设置文件,据我所知它应该使用默认值:

MEDIA_ROOT = ''
MEDIA_URL = ''
STATIC_ROOT = ''
Run Code Online (Sandbox Code Playgroud)

我在admin.py中注册了模型,然后我就可以浏览文件并保存了.当试图打开该文件时,我得到:

Page not found (404)
Request Method: GET
Request URL: http://127.0.0.1:8000/admin/businessui/answer/1/Attachments/outlook.png/
answer object with primary key u'1/Attachments/outlook.png' does not exist.
Run Code Online (Sandbox Code Playgroud)

有人可以指出我在这里缺少什么能够在我的开发机器上本地打开保存的文件?

小智 5

尝试像这样设置settings.py:

import os
PROJECT_ROOT_PATH = os.path.abspath(os.path.join(os.path.dirname(__file__), os.path.pardir))

MEDIA_ROOT = os.path.join(PROJECT_ROOT_PATH, 'media/')
MEDIA_URL = '/media/'
Run Code Online (Sandbox Code Playgroud)

所以,尝试将您的文件放入:

http://127.0.0.1:8000/media/Attachments/outlook.png
Run Code Online (Sandbox Code Playgroud)