设置.py
添加以下行:
import os
BASE_DIR = os.path.realpath(os.path.dirname(__file__))
替换行:
MEDIA_ROOT = ''
MEDIA_URL = ''
with
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR,os.pardir,'media')
这应该设置您的项目以渲染文件夹 /您的项目目录/media/ 中的媒体内容
urls.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"
admin.py
使用字段fileLink
作为只读字段,您也可以将其添加到您的list_display
eg
class FileAdmin(admin.ModelAdmin):
list_display = ['fileLink']
readonly_fields = ['fileLink']