设置.py
添加行:
import os
BASE_DIR = os.path.realpath(os.path.dirname(__file__))
替换行:
MEDIA_ROOT = ''
MEDIA_URL = ''
和
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR,os.pardir,'media')
这应该设置您的项目以从文件夹/您的项目目录/媒体/呈现您的媒体内容
网址.py
还添加以下行:
import settings
在您的 url 模式中添加以下行:
url(r'^media/(?P<path>.*)$', 'django.views.static.serve',{'document_root': settings.MEDIA_ROOT, 'show_indexes': False}),
模型.py
在您的模型中添加以下行:
File = models.FileField('File',upload_to='./')
在模型中定义方法
def fileLink(self):
if self.File:
return '<a href="' + str(self.File.url) + '">' + 'NameOfFileGoesHere' + '</a>'
else:
return '<a href="''"></a>'
fileLink.allow_tags = True
fileLink.short_description = "File Link"
管理员.py
将该字段fileLink
用作只读字段,您也可以将其添加到您的list_display
例如
class FileAdmin(admin.ModelAdmin):
list_display = ['fileLink']
readonly_fields = ['fileLink']