溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Django添加bootstrap框架時無法加載靜態(tài)文件怎么辦

發(fā)布時間:2021-06-30 16:15:34 來源:億速云 閱讀:303 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹Django添加bootstrap框架時無法加載靜態(tài)文件怎么辦,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

項目結(jié)構(gòu)如下:

Django添加bootstrap框架時無法加載靜態(tài)文件怎么辦

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

Django添加bootstrap框架時無法加載靜態(tài)文件怎么辦

html文件中的寫法如下:

Django添加bootstrap框架時無法加載靜態(tài)文件怎么辦

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

Django添加bootstrap框架時無法加載靜態(tài)文件怎么辦

就可以加載到靜態(tài)文件了。

補(bǔ)充知識:Django-項目上線后,靜態(tài)文件配置失效以及404、500頁面的全局配置

一.項目上線后靜態(tài)文件失效

1.因為項目還沒上線的時候,django會默認(rèn)從setting.py中這個設(shè)置

STATIC_URL = '/static/'

STATICFILES_DIRS = (
  os.path.join(BASE_DIR, 'static'),
)

使靜態(tài)文件生效

2.當(dāng)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.對應(yīng)的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)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI