部署到生产环境中遇到的坑大部分都是引用静态文件带来的, setting设置里面debug设为False, 需要设置ALLOWED_HOSTS=["服务器ip"],不然运行不了的. 还需要设置STATIC_ROOT = os.path.join(BASE_DIR, ‘static’)然后执行python manage.py collectstatic将静态文件全部复制到根目录下static里.这时候在开发环境下是不能处理一些静态文件了,需要在运行时强制Django处理静态文件: pyth…
前段时间调试一直是在Debug=True先运行的,没有什么问题.今天关闭了Debug后,出现了一个问题.就是静态文件找不到了,「img.css.js」都提示404,无法准确的访问 static 静态文件. 环境是:Python3.7 Django2.2 出现的问题根本原因是:当我们在开发django应用时如果设置了 DEBUG = True,那么django便会自动帮我们对静态文件进行路由:但是当我们设置DEBUG = False后,这一功能便没有了,此时静态文件就会出现加载失败的情况,想要让静…
当Django设置DEBUG为False时,发现admin和html的静态资源文件加载失败,折腾一段时间终于找到解决办法: 1.先在setting文件增加BASE_DIR(项目的路径) BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 2.然后设置:DEBUG = False 3.新增:ALLOWED_HOSTS = ['*']   # 允许IP访问 4.新增 STATIC_URL = '/static/…
修改setting.py STATIC_URL = '/static/' STATIC_ROOT = 'static' ## 新增行 STATICFILES_DIRS = [ os.path.join(BASE_DIR, '/static/'), ##修改地方 ] 修改url.py from django.views import static ##新增 from django.conf import settings ##新增 from django.conf.urls import url…
WeTest 导读 此文总结了笔者在Web静态资源方面的一些优化经验. 一.如何优化 用户在访问网页时, 最直观的感受就是页面内容出来的速度,我们要做的优化工作, 也主要是为了这个目标.那么为了提高页面加载(或者渲染)速度呢?一般来说有三个方面: 1.代码逻辑:优秀的代码逻辑结构可以有效减少渲染页面使用的内存和速度(比如虚拟DOM),此方面不在本文讨论范围内. 2.SSR服务器渲染,也就是所谓的"直出".将首屏所有内容在服务器端渲染成html静态代码后,直接输出给浏览器,可以有效加快用…
在设计登录界面时,采用了网上下载的登录模板,漂亮,简易.但是在测试和部署时,发现原来模板中采用的js文件和css文件,却着实让我折腾了好几天. 在以往的网页设计中,一般只要把测试站点开启后,网页中的静态文件就不会出现连接的问题,但是在Django中,包括开发环境,也包括部署环境,竟然在设置中都有所不一样,现在将自己的经历写下来,也便于以后查看. 1.开发环境的设置 (1)开发环境可以用IDLE(默认)或Pycharm,这个没有影响.首先在自己的APP中创建一个存放静态文件的文件夹,名称为“sta…
原文地址:传送门 WeTest 导读 此文总结了笔者在Web静态资源方面的一些优化经验. 如何优化 用户在访问网页时, 最直观的感受就是页面内容出来的速度,我们要做的优化工作, 也主要是为了这个目标.那么为了提高页面加载(或者渲染)速度呢?一般来说有三个方面: 1.代码逻辑:优秀的代码逻辑结构可以有效减少渲染页面使用的内存和速度(比如虚拟DOM),此方面不在本文讨论范围内. 2.SSR服务器渲染,也就是所谓的“直出”.将首屏所有内容在服务器端渲染成html静态代码后,直接输出给浏览器,可以有效加…
一般在开发中,有的网站存在大量图片,首先图片的名称是不能重复的, 但是除了数据库可用的id以外我们可以用time模块中time.time()获取的时间来进行md5加密操作, 因为time模块所产生的时间的精度为亚秒级,是不会发生重复的情况 1.这里封装了md5的加密字符,导入setting.py的静态文件目录(路径拼接时需要)    from stu_entry.settings  import STATICFILES_DIRS    import time      import hashli…
一.基本格式 from django.conf.urls import url from . import views #循环urlpatterns,找到对应的函数执行,匹配上一个路径就找到对应的函数执行, 就不再往下循环了,并给函数传一个参数request,和wsgiref的environ类似 ,就是请求信息的所有内容 urlpatterns = [ url(正则表达式, views视图函数,参数,别名), ] 参数说明 1.正则表达式:一个正则表达式字符串 2.views视图函数:一个可调用…
1.创建app python manage.py startapp 名字 Migrations 数据库同步目录,记录数据库同步的记录 init 包文件 Admin.py django自带的后台管理文件 Apps app管理文件 Models.py 数据库建模文件,ORM文件 Tests.py django项目的测试文件 Views.py django 项目的视图文件 在setting文件中安装注册app 2.mysql配置 1.orm字段映射 2.使用ImageField需要安装pillow(P…
当设置setting.py文件当中的DEBUG=FALSE后,Django会默认使用Web Server的静态文件处理,故若没设置好Web Server对静态文件的处理的话,会出现访问静态文件404的情况. 可以通过设置--insecure参数解决 icebug@localhost:~$ python manage.py runserver --insecure…
Django设置DEBUG为False时,'django.contrib.staticfiles'会关闭,即Django不会自动搜索静态文件,静态文件不能加载导致的问题有两个: 1.页面排版不正常,即css文件不能正常加载: 2.通过url不能访问静态文件,如图片等. 这里大致先说一下STATIC_ROOT.STATICFILES_DIR的不同之处: 1.STATICFILES_DIRS是静态文件路径: 2.STATIC_ROOT用来存储使用python manage.py collectsta…
1.全局设置 setttings文件 import os import sys # Build paths inside the project like this: os.path.join(BASE_DIR, ...) # 这里用到了python中一个神奇的变量"__file__", 这个变量可以获取到当前文件的路径(含文件名) # 再来一个os.path.dirname()就是获得上一级目录 # "BASE_DIR"就是工程根目录 BASE_DIR = os.…
开启内置服务器,由于项目中local_settings.py文件中的DEBUG=True,进行开发和调试一直没什么问题. 但是现在需要编写404,500等出错页面,在debug模式下出了错都会出现报错页面,无法转向到404或500页面,这时我将local_settings.py中的DEBUG设为false,这时候应该可以转向到404页面.实验证明确实如此,404和500页面都可以得到,但是出现了新的问题:css和js文件无法加载. 在网上找了找,很快就找到了问题的原因:Django框架仅在开发模…
正式公布django项目的时候,假设存在静态文件(通常会统一放在名称为media或static的文件夹下),则须要建立url到文件系统的映射,比如.使用nginx的时候我们须要进行这种配置. # Django media location /media { alias /home/lyndon/github/Mathematician/dijkstra/media; } location /static { alias /home/lyndon/github/Mathematician/dijk…
目录 Django学习之十: staticfile 静态文件 理解阐述 静态文件 Django对静态文件的处理 其它方面 总结 Django学习之十: staticfile 静态文件 理解阐述           静态文件在web开发中是肯定经常要用到的,所以要把静态文件弄懂弄清楚,一次搞懂了就不用以后在各种框架中提到静态文件,就要重新学习一次,毕竟静态文件都是相同的特性,没什么大的变化,就用一个模式思想去套框架对应的设置就行了.           同时,将静态文件访问处理从复杂视图逻辑中剥离…
基于Django1.11配置文件settings.py import os import sys # Build paths inside the project like this: os.path.join(BASE_DIR, ...) # 这里用到了python中一个神奇的变量"__file__",这个变量可以获取到当前文件的路径(含文件名) # 再来一个os.path.dirname()就是获得上一级目录 # "BASE_DIR"就是工程根目录 BASE_D…
本文环境python3.5.2,django1.10.x系列 1.在上一篇文章中已经分析过handler的处理过程,其中load_middleware就是将配置的中间件进行初始化,然后调用相应的设置方法. django框架提供的认证,回话保持,静态文件调试处理等都是通过以中间件的形式来处理. 2.本节就分析一下django框架提供的staticfiles中间件,该中间件分别实现了三个框架的命令,分别为collectstatic,findstatic,runserver. 其中,runserver…
Django static静态配置文件   对于Django来说静态文件一般交由Web服务器处理,Django本身不处理静态文件.为了使Django开发环境能够处理静态文件,Django有和生产环境不同的静态文件配置方式. Django 版本:1.10 开发(Dev)环境配置 一.STATIC_URL, STATICFILES_DIRS, STATIC_ROOT1. 在app目录下创建static目录,将静态文件和相关文件夹放到此目录下,如your_app/static/img等2. 确保set…
初学Django,在访问静态文件时候遇到很多误区,一直配置不成功,在此记录一下. Django静态文件访问分为两种:一种是Debug模式下,测试开发网站时对静态文件的访问,一种是实际生产环境中对静态文件的访问,例如Nginx+Django配置: 第一种:Debug模式下的配置 1:在setting.py中开启Debug DEBUG = True 2:在setting.py中设置静态文件目录 STATIC_URL = '/static/' 3:配置url.py 导入规则包: from django…
一.静态文件 参考:https://www.cnblogs.com/jiajiaba/p/10584329.html 参考:https://docs.djangoproject.com/zh-hans/3.0/ref/settings/#static-files 1.1 使用 在 网页使用的css文件,js文件和图片叫做静态文件. 1)新建静态文件夹 根目录/static/js.css.images 2) 配置静态文件所在的物理目录. Settings.py # Static files (CS…
最近做了一个todolist webapp,需要稍微添加css时候又忘记django的添加方法了,查看了以前的项目才想起来,所以记录一下. 1.settings.py 将以下代码放到最下面 STATIC_URL = '/static/' STATICFILES_DIRS = ( os.path.join(BASE_DIR), ) STATICFILES_FINDERS = ( "django.contrib.staticfiles.finders.FileSystemFinder",…
django设置404页面 1.设置settings文件 DEBUG = False ALLOWED_HOSTS = ['127.0.0.1', 'localhost']或者 ALLOWED_HOSTS = ['*'] 2.配置urls文件 from django.conf.urls import handler404, handler500 handler404 = views.函数名称 3.在views文件中定义函数page_not_found和page_error from django.…
错误: Error msg: A reference was created to embedded interop assembly. because of an indirect reference to that assembly created by assembly. Consider changing the 'Embed Interop Types' property on either assembly. 解决方法: 将DLL的属性Embed Interop Type 设为Fal…
Django在Debug模式关闭掉后请求静态文件时,返回404相应码,后台的请求url是"GET /static/css/404.css HTTP/1.1" 404 1217,找不到静态文件的url.通过配置静态文件的url和命令行启动来实现静态文件的获取. URL中的配置 django的静态文件是通过`来管理的.配置静态文件的响应是通过serve()函数数显的.url.py`中的配置如下: from django.conf.urls import url from django.co…
Django框架仅在开发模式下提供静态文件服务.当我开启DEBUG模式时,Django内置的服务器是提供静态文件的服务的,所以css等文件访问都没有问题,但是关闭DEBUG模式后,Django便不提供静态文件服务了. 1.使用django.views.static.serve()方法.在URLconf中添加: 编辑usrs.py,在最后添加如下代码: from django.conf import settings if settings.DEBUG is False: urlpatterns…
在使用scss和less开发的时候,遇到过一件很有趣的事,因为网站需要支持响应式,就开了一个响应式样式框架,简单的几百行scss代码,居然生成了近100KB的css代码,因此决定重构这个样式库.而重构后的项目总是出现各种各样的问题,尤其在响应式方面,可能在一种分比率下页面显示正常,而在另一种分辨率下页面却变得面目全非,几次调整都有遗漏的地方,忙得测试人员(其实就是我自己了)不可开交.最后总结为样式开发也是需要做自动化回归测试的,尤其是开发具有响应式功能的复杂样式库的时候,自动化测试尤其重要. 如…
开发流程介绍 之前Django的学习过程当中已经把基本Django开发学完了,现在以Django 的博客项目完成一遍课程的回顾和总结.同时来一次完整开发的Django体验. 一个产品从研究到编码我们要经历以下的过程: 博客开发需求分析与建模 需求分析 本次项目完成的是一个博客的项目,博客主要目的是为了分享个人的技术,进行技术积累. 主要是发布文章日志.但是也需要有评论和互动.需要完成以下功能点: 1.文章的发布.展示.修改.删除. 2.文章评论 3.读者互动 4.图片管理 概要设计 我们对上面的…
运行 django-admin.py startproject [project-name] 命令会生成一系列文件,在Django 1.6版本以后的 settings.py 文件中有以下语句: # Build paths inside the project like this: os.path.join(BASE_DIR, ...)import osBASE_DIR = os.path.dirname(os.path.dirname(__file__)) 这里用到了python中一个神奇的变量…
在部署完Django项目后,进行admin后台登录发现样式丢失,后台日志显示:js和css文件丢失 解决办法: 配置settings.py如下: #DEBUG打开时,app的静态文件默认从这里读取 STATIC_URL = '/static/' #静态文件根目录,当关闭DEBUG的时候admin从STATIC_ROOT获取静态文件,同时需要配置url STATIC_ROOT = ("f:/py_workspace/DJ/proj/people/static/") #Django部署在A…