讓xadmin背景顯示上傳的圖檔
開發環境,python3.6 Django1.9 記得安裝Pillow 圖像庫
#models.py 網站輪播圖
class web_banner(models.Model):
Title = models.CharField(max_length=100, null=False, verbose_name='标題')
Image = models.ImageField(max_length=200, upload_to='image/banner/%Y/%m', default='image/banner.png', verbose_name='輪播圖檔')
Url = models.URLField(max_length=200, null=True, verbose_name='通路位址')
Index = models.IntegerField(default=100, verbose_name='順序')
AddTime = models.DateTimeField(default=datetime.now, verbose_name='添加時間')
class Meta:
db_table = 'web_banner'
verbose_name = '輪播圖'
verbose_name_plural = verbose_name
def __str__(self):
return self.Title
其中,Image為圖檔類型
settings.py 全局配置檔案
)
# 指定上傳媒體檔案的位置
MEDIA_ROOT = os.path.join(BASE_DIR, 'media').replace('\\', '/')
MEDIA_URL = '/media/'
當沒有此檔案夾時,第一次上傳會自動建立
urls.py 全局路由
from django.contrib import admin
from django.conf.urls import url # 全局路由
import xadmin # xadmin背景
from .settings import MEDIA_ROOT # 上傳媒體加載包
from django.views.static import serve # 上傳媒體加載包
urlpatterns = [
url('xadmin/', xadmin.site.urls),
url(r'^media/(?P<path>.*)$', serve, {"document_root": MEDIA_ROOT}), # 指定上傳媒體位置
]
引入
from .settings import MEDIA_ROOT # 上傳媒體加載包
from django.views.static import serve # 上傳媒體加載包
在urlpatterns中加入
url(r’^media/(?P
.*)$’, serve, {“document_root”: MEDIA_ROOT}), # 指定上傳媒體位置
此時,你上傳的圖檔在背景點開及可顯示。