Django添加bootstrap框架時無法加載靜態(tài)文件的解決方式
項目結(jié)構(gòu)如下:
開始時在setting.py中設(shè)置如下;
html文件中的寫法如下:
這樣設(shè)置一直無法加載靜態(tài)文件,只需要修改setting.py文件如下:
就可以加載到靜態(tài)文件了。
補充知識:Django-項目上線后,靜態(tài)文件配置失效以及404、500頁面的全局配置
一.項目上線后靜態(tài)文件失效
1.因為項目還沒上線的時候,django會默認從setting.py中這個設(shè)置
STATIC_URL = '/static/' STATICFILES_DIRS = ( os.path.join(BASE_DIR, 'static'), )
使靜態(tài)文件生效
2.當setting.py中設(shè)置項目上線環(huán)境,代碼如下
# 項目上線,生產(chǎn)模式設(shè)置False DEBUG = False ALLOWED_HOSTS = ['*'] # 項目沒上線 # DEBUG = True # # ALLOWED_HOSTS = []
3.前端就找不到靜態(tài)文件static文件夾了。
4.需要像MEDIA文件一樣重新配置靜態(tài)文件的url:
5.setting.py中加代碼:
#項目上線后,static路徑需要重新配置
STATIC_ROOT = os.path.join(BASE_DIR,'static')
6.項目下的總urls.py(不是app的urls.py)中:
#項目上線后,需要自己配置static靜態(tài)文件路徑
url(r'^static/(?P<path>.*)$', serve, {'document_root':STATIC_ROOT}),
7.這樣靜態(tài)文件就能訪問到了
二、404、500頁面的全局配置
1.因為這個配置需要項目改成生產(chǎn)環(huán)境(及上的debug=False,生產(chǎn)環(huán)境配置需設(shè)置好才有效)
2.項目下的總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.對應的user.views中:
def page_not_found(request): ''' 全局處理404頁面 ''' from django.shortcuts import render_to_response response = render_to_response('404.html',{}) response.status_code = 404 return response def page_error(request): ''' 全局處理500頁面 ''' from django.shortcuts import render_to_response response = render_to_response('500.html',{}) response.status_code = 500 return response
4.項目的templates文件夾添加自己想要的404/500.html頁面。
5.測試500的問題。
class IndexView(View): ''' 首頁 ''' def get(self,request): # 取輪播圖 print(1/0)
6.訪問首頁。
7.成功跳轉(zhuǎn)到自己配置的500頁面。
以上這篇Django添加bootstrap框架時無法加載靜態(tài)文件的解決方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用Jest?在?Visual?Studio?Code?中進行單元測試的流程分析
Jest是一個流行的JavaScript測試框架,它提供了簡潔、靈活和強大的工具來編寫和運行單元測試,今天通過本文給大家介紹使用Jest在Visual Studio Code中進行單元測試的流程分析,感興趣的朋友跟隨小編一起看看吧2023-07-07Python 格式化打印json數(shù)據(jù)方法(展開狀態(tài))
今天小編就為大家分享一篇Python 格式化打印json數(shù)據(jù)方法(展開狀態(tài)),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02Python cookbook(數(shù)據(jù)結(jié)構(gòu)與算法)保存最后N個元素的方法
這篇文章主要介紹了Python數(shù)據(jù)結(jié)構(gòu)與算法 保存最后N個元素的方法,涉及Python基于迭代器與生成器實現(xiàn)歷史記錄功能的相關(guān)操作技巧,需要的朋友可以參考下2018-02-02