Django添加bootstrap框架时无法加载静态文件的解决方式


Posted in Python onMarch 27, 2020

项目结构如下:

Django添加bootstrap框架时无法加载静态文件的解决方式

开始时在setting.py中设置如下;

Django添加bootstrap框架时无法加载静态文件的解决方式

html文件中的写法如下:

Django添加bootstrap框架时无法加载静态文件的解决方式

这样设置一直无法加载静态文件,只需要修改setting.py文件如下:

Django添加bootstrap框架时无法加载静态文件的解决方式

就可以加载到静态文件了。

补充知识:Django-项目上线后,静态文件配置失效以及404、500页面的全局配置

一.项目上线后静态文件失效

1.因为项目还没上线的时候,django会默认从setting.py中这个设置

STATIC_URL = '/static/'

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

使静态文件生效

2.当setting.py中设置项目上线环境,代码如下

# 项目上线,生产模式设置False
DEBUG = False

ALLOWED_HOSTS = ['*']

# 项目没上线
# DEBUG = True
#
# ALLOWED_HOSTS = []

3.前端就找不到静态文件static文件夹了。

4.需要像MEDIA文件一样重新配置静态文件的url:

5.setting.py中加代码:

#项目上线后,static路径需要重新配置
STATIC_ROOT = os.path.join(BASE_DIR,'static')

6.项目下的总urls.py(不是app的urls.py)中:

#项目上线后,需要自己配置static静态文件路径
url(r'^static/(?P<path>.*)$', serve, {'document_root':STATIC_ROOT}),

7.这样静态文件就能访问到了

二、404、500页面的全局配置

1.因为这个配置需要项目改成生产环境(及上的debug=False,生产环境配置需设置好才有效)

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.成功跳转到自己配置的500页面。

以上这篇Django添加bootstrap框架时无法加载静态文件的解决方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现telnet服务器的方法
Jul 10 Python
理解Python中的绝对路径和相对路径
Aug 30 Python
Python实现进程同步和通信的方法
Jan 02 Python
python验证码识别教程之利用滴水算法分割图片
Jun 05 Python
pandas进行数据的交集与并集方式的数据合并方法
Jun 27 Python
mac下如何将python2.7改为python3
Jul 13 Python
Python爬虫实现抓取京东店铺信息及下载图片功能示例
Aug 07 Python
5分钟 Pipenv 上手指南
Dec 20 Python
Python实现图片批量加入水印代码实例
Nov 30 Python
Python爬虫如何破解JS加密的Cookie
Nov 19 Python
pytorch实现ResNet结构的实例代码
May 17 Python
Python自动化工具之实现Excel转Markdown表格
Apr 08 Python
Python itertools.product方法代码实例
Mar 27 #Python
python实现图像全景拼接
Mar 27 #Python
如何在Python 游戏中模拟引力
Mar 27 #Python
Python 实现平台类游戏添加跳跃功能
Mar 27 #Python
django配置app中的静态文件步骤
Mar 27 #Python
使用卷积神经网络(CNN)做人脸识别的示例代码
Mar 27 #Python
django实现HttpResponse返回json数据为中文
Mar 27 #Python
You might like
php使用FFmpeg接口获取视频的播放时长、码率、缩略图以及创建时间
2016/11/07 PHP
php实现姓名根据首字母排序的类与方法(实例代码)
2018/05/16 PHP
比较简单的一个符合web标准的JS调用flash方法
2007/11/29 Javascript
javascript实现图片切换的幻灯片效果源代码
2012/12/12 Javascript
jQuery实现内容定时切换效果完整实例
2016/04/06 Javascript
移动端点击图片放大特效PhotoSwipe.js插件实现
2016/08/25 Javascript
微信小程序 request接口的封装实例代码
2017/04/26 Javascript
基于react组件之间的参数传递(详解)
2017/09/05 Javascript
nodejs使用redis作为缓存介质实现的封装缓存类示例
2018/02/07 NodeJs
使用pkg打包ThinkJS项目的方法步骤
2019/12/30 Javascript
Vue实现手机扫描二维码预览页面效果
2020/05/28 Javascript
element-ui中el-upload多文件一次性上传的实现
2020/12/02 Javascript
python转换摩斯密码示例
2014/02/16 Python
python实现简单温度转换的方法
2015/03/13 Python
Python中强大的命令行库click入门教程
2016/12/26 Python
微信跳一跳辅助python代码实现
2018/01/05 Python
tensorflow实现简单逻辑回归
2018/09/07 Python
解决python selenium3启动不了firefox的问题
2018/10/13 Python
Python supervisor强大的进程管理工具的使用
2019/04/24 Python
基于python解线性矩阵方程(numpy中的matrix类)
2019/10/21 Python
python之pymysql模块简单应用示例代码
2019/12/16 Python
Python函数参数类型及排序原理总结
2019/12/19 Python
Python爬取YY评级分数并保存数据实现过程解析
2020/06/01 Python
浅谈three.js中的needsUpdate的应用
2012/11/12 HTML / CSS
最好的商品表达自己:Cafepress
2019/09/04 全球购物
德国亚马逊官方网站:Amazon.de
2020/11/15 全球购物
吸烟检讨书2000字
2014/02/13 职场文书
国贸专业自荐信范文
2014/03/02 职场文书
服务之星事迹材料
2014/05/03 职场文书
保险专业求职信
2014/07/07 职场文书
2015年“世界无车日”活动方案
2015/05/06 职场文书
我的生日感言
2015/08/03 职场文书
情人节单身感言
2015/08/03 职场文书
2016年保险公众宣传日活动总结
2016/04/05 职场文书
nginx搭建图片服务器的过程详解(root和alias的区别)
2021/03/31 Servers
Python带你从浅入深探究Tuple(基础篇)
2021/05/15 Python