Django添加bootstrap框架時(shí)無(wú)法加載靜態(tài)文件的解決方式
項(xiàng)目結(jié)構(gòu)如下:

開始時(shí)在setting.py中設(shè)置如下;

html文件中的寫法如下:

這樣設(shè)置一直無(wú)法加載靜態(tài)文件,只需要修改setting.py文件如下:

就可以加載到靜態(tài)文件了。
補(bǔ)充知識(shí):Django-項(xiàng)目上線后,靜態(tài)文件配置失效以及404、500頁(yè)面的全局配置
一.項(xiàng)目上線后靜態(tài)文件失效
1.因?yàn)轫?xiàng)目還沒上線的時(shí)候,django會(huì)默認(rèn)從setting.py中這個(gè)設(shè)置
STATIC_URL = '/static/' STATICFILES_DIRS = ( os.path.join(BASE_DIR, 'static'), )
使靜態(tài)文件生效
2.當(dāng)setting.py中設(shè)置項(xiàng)目上線環(huán)境,代碼如下
# 項(xiàng)目上線,生產(chǎn)模式設(shè)置False DEBUG = False ALLOWED_HOSTS = ['*'] # 項(xiàng)目沒上線 # DEBUG = True # # ALLOWED_HOSTS = []
3.前端就找不到靜態(tài)文件static文件夾了。
4.需要像MEDIA文件一樣重新配置靜態(tài)文件的url:
5.setting.py中加代碼:
#項(xiàng)目上線后,static路徑需要重新配置
STATIC_ROOT = os.path.join(BASE_DIR,'static')
6.項(xiàng)目下的總urls.py(不是app的urls.py)中:
#項(xiàng)目上線后,需要自己配置static靜態(tài)文件路徑
url(r'^static/(?P<path>.*)$', serve, {'document_root':STATIC_ROOT}),
7.這樣靜態(tài)文件就能訪問(wèn)到了
二、404、500頁(yè)面的全局配置
1.因?yàn)檫@個(gè)配置需要項(xiàng)目改成生產(chǎn)環(huán)境(及上的debug=False,生產(chǎn)環(huán)境配置需設(shè)置好才有效)
2.項(xiàng)目下的總urls.py(不是app的urls.py)中,urlpatterns下面添加:
from XMJonline.settings import MEDIA_ROOT,STATIC_ROOT
urlpatterns = [
...
]
# 全局404,500配置
handler404 = 'users.views.page_not_found'
handler500 = 'users.views.page_error'
3.對(duì)應(yīng)的user.views中:
def page_not_found(request):
'''
全局處理404頁(yè)面
'''
from django.shortcuts import render_to_response
response = render_to_response('404.html',{})
response.status_code = 404
return response
def page_error(request):
'''
全局處理500頁(yè)面
'''
from django.shortcuts import render_to_response
response = render_to_response('500.html',{})
response.status_code = 500
return response
4.項(xiàng)目的templates文件夾添加自己想要的404/500.html頁(yè)面。
5.測(cè)試500的問(wèn)題。
class IndexView(View):
'''
首頁(yè)
'''
def get(self,request):
# 取輪播圖
print(1/0)
6.訪問(wèn)首頁(yè)。
7.成功跳轉(zhuǎn)到自己配置的500頁(yè)面。
以上這篇Django添加bootstrap框架時(shí)無(wú)法加載靜態(tài)文件的解決方式就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python對(duì)常見數(shù)據(jù)類型的遍歷解析
這篇文章主要介紹了python對(duì)常見數(shù)據(jù)類型的遍歷解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08
Python面向?qū)ο缶幊讨庋b的藝術(shù)你了解嗎
這篇文章主要為大家詳細(xì)介紹了Python面向?qū)ο缶幊讨庋b的藝術(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-02-02
使用優(yōu)化器來(lái)提升Python程序的執(zhí)行效率的教程
這篇文章主要介紹了使用優(yōu)化器來(lái)提升Python程序的執(zhí)行效率的教程,包括編寫計(jì)時(shí)器和使用內(nèi)建的優(yōu)化器等,需要的朋友可以參考下2015-04-04
解決Python報(bào)錯(cuò):ValueError:operands?could?not?be?broadcast?t
這篇文章主要給大家介紹了關(guān)于解決Python報(bào)錯(cuò):ValueError:operands?could?not?be?broadcast?together?with?shapes的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02
Python面向?qū)ο笕筇卣鳎豪^承、封裝和多態(tài)的深度解析
在面向?qū)ο蟪绦蛟O(shè)計(jì)中,對(duì)象可以看做是數(shù)據(jù)(特性)以及由一系列可以存取、操作這些數(shù)據(jù)的方法所組成的集合,Python是面向?qū)ο蟮恼Z(yǔ)言,支持面向?qū)ο缶幊痰娜筇匦裕豪^承、封裝(隱藏)、多態(tài),本文將逐一講解Python的三大特性2025-01-01
python 根據(jù)pid殺死相應(yīng)進(jìn)程的方法
下面小編就為大家?guī)?lái)一篇python 根據(jù)pid殺死相應(yīng)進(jìn)程的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-01-01
TensorFlow通過(guò)文件名/文件夾名獲取標(biāo)簽,并加入隊(duì)列的實(shí)現(xiàn)
今天小編就為大家分享一篇TensorFlow通過(guò)文件名/文件夾名獲取標(biāo)簽,并加入隊(duì)列的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02

