在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Python  網(wǎng)絡安全/ django后臺使用summernote,MEDIA路徑問題

django后臺使用summernote,MEDIA路徑問題

題目描述

DEBUG = False 時找不到圖片路徑,其他樣式文件都能加載

setting.py 文件

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
DEBUG = False
STATIC_URL = '/static/'
if DEBUG:
    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, 'static'),
    ]
else:
    STATIC_ROOT = os.path.join(BASE_DIR, 'static')

MEDIA_URL = '/media/'

MEDIA_ROOT = os.path.join(BASE_DIR, 'static/media')

路由信息

urlpatterns = [
    ...
    path('summernote/', include('django_summernote.urls')),
    path('archives/<str:year>/<str:month>', blog_views.archives, name='archives'),
    path('category/<str:id>', blog_views.category, name='category'),
]

# 處理 DEBUG = False情況找不到靜態(tài)資源
if settings.DEBUG:
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
else:
    urlpatterns += [
        url(r'^static/(?P<path>.*)$', serve,
            {'document_root': settings.STATIC_ROOT}),
    ]

clipboard.png

目錄結(jié)構(gòu)
網(wǎng)上查找相關(guān)問題試了下還是沒解決, DEBUG = True 時才可以正常顯示

初學,有點不太懂

回答
編輯回答
法克魷

debug=False時,開發(fā)服務器,也就是python manage.py runserver 跑起來的服務器,是不會處理靜態(tài)資源的,所以找不到.
靜態(tài)資源需要使用nginx或者apache之類的工具維護.

2017年4月1日 08:59
編輯回答
糖豆豆

你上面設置的效果是 MEDIA_ROOT :
project/static/media/

最終的產(chǎn)生的 MEDIA_URL:
/media/static/media/

舊版本的Django中有規(guī)定過,media和static貌似不能同一目錄的。

2017年11月14日 19:25
編輯回答
護她命
if settings.DEBUG:
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
else:
    urlpatterns += [
        url(r'^static/(?P<path>.*)$', serve, {'document_root': settings.STATIC_ROOT}),
        url(r'^media/(?P<path>.*)$', serve, {'document_root': settings.MEDIA_ROOT}), # 加一條MEDIA_URL的映射
    ]
2018年7月17日 07:52