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中xrange与yield的用法实例分析
Dec 26 Python
Python pandas常用函数详解
Feb 07 Python
连接pandas以及数组转pandas的方法
Jun 28 Python
如何使用Python 打印各种三角形
Jun 28 Python
Python高级特性 切片 迭代解析
Aug 23 Python
用Python画一个LinkinPark的logo代码实例
Sep 10 Python
Django 删除upload_to文件的步骤
Mar 30 Python
python识别验证码的思路及解决方案
Sep 13 Python
详解Django ORM引发的数据库N+1性能问题
Oct 12 Python
如何在Win10系统使用Python3连接Hive
Oct 15 Python
python sleep和wait对比总结
Feb 03 Python
Pytorch中Softmax和LogSoftmax的使用详解
Jun 05 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
2021年最新CPU天梯图
2021/03/04 数码科技
最省空间的计数器
2006/10/09 PHP
深入掌握include_once与require_once的区别
2013/06/17 PHP
php一次性删除前台checkbox多选内容的方法
2013/09/22 PHP
微信公众平台实现获取用户OpenID的方法
2015/04/15 PHP
Laravel框架使用monolog_mysql实现将系统日志信息保存到mysql数据库的方法
2018/08/16 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
2020/03/30 PHP
在一个浏览器里呈现所有浏览器测试结果的前端测试工具的思路
2010/03/02 Javascript
Javascript/Jquery——简单定时器的多种实现方法
2013/07/03 Javascript
基于JQuery的列表拖动排序实现代码
2013/10/01 Javascript
JavaScript简介
2015/02/15 Javascript
实现placeholder效果的方案汇总
2015/06/11 Javascript
跟我学习javascript的严格模式
2015/11/16 Javascript
JavaScript严格模式详解
2015/11/18 Javascript
js 获取当前web应用的上下文路径实现方法
2016/08/19 Javascript
利用JS提交表单的几种方法和验证(必看篇)
2016/09/17 Javascript
详解nodejs操作mongodb数据库封装DB类
2017/04/10 NodeJs
Vue 中axios配置实例详解
2018/07/27 Javascript
[04:31]2016国际邀请赛中国区预选赛妖精采访
2016/06/27 DOTA
使用PYTHON接收多播数据的代码
2012/03/01 Python
Django实现分页显示效果
2019/10/31 Python
python 实现目录复制的三种小结
2019/12/04 Python
python 元组的使用方法
2020/06/09 Python
Pycharm Git 设置方法
2020/09/15 Python
浅析python 通⽤爬⾍和聚焦爬⾍
2020/09/28 Python
关于HTML5的22个初级技巧(图文教程)
2012/06/21 HTML / CSS
H5调用相机拍照并压缩图片的实例代码
2017/07/20 HTML / CSS
用canvas画心电图的示例代码
2018/09/10 HTML / CSS
澳大利亚网上玩具商店:Mr Toys Toyworld
2018/03/25 全球购物
Melissa鞋英国官方网站:Nonnon
2019/05/01 全球购物
外贸业务员岗位职责
2013/11/24 职场文书
入职担保书怎么写
2014/05/12 职场文书
就业协议书范本
2014/10/08 职场文书
高三化学教学反思
2016/02/22 职场文书
pycharm 如何查看某一函数源码的快捷键
2021/05/12 Python
Java 使用类型为Object的变量指向任意类型的对象
2022/04/13 Java/Android