问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

django设置文件如何设置(2023年最新解答)

发布网友 发布时间:2024-09-26 20:13

我来回答

1个回答

热心网友 时间:2024-12-08 03:11

导读:今天首席CTO笔记来给各位分享关于django设置文件如何设置的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

django前端怎么设置静态文件路径

设置一个路径变量

APP_PATH=os.path.dirname(os.path.dirname(__file__))

#

Absolute

path

to

the

directory

static

files

should

be

collected

to.

#

Don't

put

anything

in

this

directory

yourself;

store

your

static

files

#

in

apps'

"static/"

subdirectories

and

in

STATICFILES_DIRS.

#

注意要修改STATIC_ROOT变量

STATIC_ROOT

=

os.path.join(APP_PATH,'static').replace('\\','/')

#

URL

prefix

for

static

files.

#

Example:

ample.com/static/",

"h

ic.example.com/"

STATIC_URL

=

'/static/'

#

当然还有STATICFILES_DIRS变量

STATICFILES_DIRS

=

(

#

Put

strings

here,

like

"/home/html/static"

or

"C:/www/django/static".

#

Always

use

forward

slashes,

even

on

Windows.

#

Don't

forget

to

use

absolute

paths,

not

relative

paths.

os.path.join(APP_PATH,'mobile_oa_server/static').replace('\\','/'),

)

python——Django项目开发:配置项目/static/路径,调用css、img、js等静态文件

在Django项目开发中,不能像正常web开发一样通过'imgs/bg.jpg'访问本地静态文件,需要做一些配置,才能实现静态文件的访问。

一、首先在项目根路径下新建一个static文件夹,然后在static文件夹下可以新建相应的css、imgs、js等文件夹,用于存放css、img、js等静态文件。

二、项目配置

1、打开settings.py,在底部添加:

2、打开urls.py,在urlpatterns中添加:(注意,如果你在blog目录下也建立了urls.py,那么就得在blog/urls.py中做修改。别忘了importsettings):

(不过我经过实测,不加这一个,也可以完成静态文件的访问)

3、在html模板最上面添加:

然后在需要的地方按照这个格式进行调用,如:

最后重新运行项目,img等本地静态文件就可以被django找到了,这时模板对应的页面就可以显示使用img等文件了。

Django中静态文件之各个配置详解

2.STATIC_ROOT:这个是配置静态文件存放目录,另外一个作用就是运行收集静态文件的命令(关于命令的部分后面会讲)时,最终静态文件收集存放的位置,注意,这个配置只会在debug=false时生效(生产环境)(至于为什么之后会讲)。

4.STATICFILES_DIRS:在实际项目开发中,如果我们的静态文件存放在一个或多个目录时,可以定义一个列表,用于存储静态文件,django默认配置并没有这个配置,如果需要,请自己定义,当项目下存在一个或多个静态资源的目录时,非常适合这样定义。注意,这个配置只在debug=true时生效(开发环境)

8.templates:定义HTML模板文件存放目录,如果你用的是pycharm的IDE的话,在创建项目时,可以根据配置自动创建一个templates目录,pycham会自动帮我们配置,如果没有配置,就需要手动创建,当然,你也可以选择自定义该目录

9.collectstatic:在项目部署时,我们还要进行静态文件的收集,如果手动收集静态文件的话,工程量无疑很大,而且部署后,debug肯定要改为debug=false,这时如果不进行静态文件的收集的话,django自带的部分,如admin后台就会出现CSS无法加载的问题,因此,项目部署前,这个操作是是必须的。

django的django.contrib.staticfiles提供了一个收集静态文件的命令:pythonmanage.pycollectstatic,执行该命令后,会将静态文件收集到配置好的STATIC_ROOT中

Django静态文件与动态文件

编辑settings:

MEDIA_ROOT和MEDIA_URL代表的是用户上传后的文件保存的地方。可以理解为存放可变文件的文件夹。

这两个参数有什么用处呢?

在Django的FileField和ImageField这样的Model类中,有upload_to参数可选。当upload_to设置相关的地址后,如例子:

文件上传后将自动保存到:os.path.join(MEDIA_ROOT,upload_to),在本例中就是:/static/uploads/test_pictures

而MEDIA_URL,则代表用户可以通过怎样的URL来访问这些上传后的文件资源。

在本例子中,本机地址是:,MEDIA_URL设置为/static/uploads/

那么通过:文件名就可以访问相关的上传图片或者其他文件。

STATIC_ROOT和STATIC_URL则是网站中,用于网站放置的静态图片、CSS、JS等文件的保存地址。可以理解为,保存网站运行中不会再变文件的文件夹(即不会删除或者新增)

STATIC_URL,同MEDIA_URL类似;设置STATIC_URL为"/static/"时候,通过:文件名就可以访问相关的静态文件了。

STATIC_ROOT是一个比较特殊的文件夹。这是Django的开发模式和部署模式区别最大的地方。

通常我们在开发模式下,可以在我们所在的project下建立相应的app,然后每个app下都建立相应的static文件夹。在开发模式下(Debug=True),Django将为我们自动查找这些静态文件(每个app)并在网页上显示出来。然而,在部署模式下,Django认为这些工作交由web服务器来运行会更有效率。

因此,在部署时,我们需要运行一下:

这个命令将会把每个app里的static目录下的文件copy到STATIC_ROOT这个文件夹下。

如果在部署模式下,即:(Debug=False)访问相关网页,如:文件名,将不会访问Django下各个App中的static文件夹,而是STATIC_ROOT中所指定的文件夹。

为了在部署模式下正确使用,我们还需要在urls.py中添加以下:

这相当于告诉Django碰到一个"static"开头的链接时,该如何处理。

了解完以上之后,我们让图片在前端显示出来。

编写一个show视图函数,来传递动态图片:

然后编写show.html:

django1.9怎么配置静态文件

想把以前的一个asp.net网站移植到django上,发现django对静态资源似乎支持的不好,不能直接根据相对路径查找,要做一些配置,找了很多解决方案,整理如下:

1、django对静态资源的配置是跟版本有关的!!!切记!!!1.3以前的和以后的配置不太一样!!!下面仅针对Django1.9;

2、settings.py中的installed

apps

要包含'django.contrib.staticfiles';

3、settings.py中的STATIC_URL就是app目录下的静态文件所在文件夹的相对路径,默认为/static/,可以自定义;

4、调用时用如下形式:

{%

load

static

%}

img

src="{%

static

"my_app/myexample.jpg"

%}"

alt="My

image"/

导入js,img等静态文件后报错:

File

"D:\Python27\lib\mimetypes.py",

line

249,

in

enum_types

ctype

=

ctype.encode(default_encoding)

#

omit

in

3.x!

UnicodeDecodeError:

'ascii'

codec

can't

decode

byte

0xb0

in

position

1:

ordinal

not

in

range(128)

[27/Dec/2015

15:26:32]

"GET

/static/assets/img/nextPage_small_grey.jpg

HTTP/1.1"

500

59

找到关键报错文件mimetypes.py,百度了一下,找到了解决方案:在Python安装目录下的lib/site-packages中添加一个文件sitecustomize.py,内容为

import

sys

sys.setdefaultencoding("cp1251")

我设置的编码格式为utf-8,不知道其他格式是否也可以。重启运行,成功。

「Django框架」-拆分配置文件settings

使用Django命令生成一个项目的基本结构时,配置信息默认保存在和项目目录同名的目录下的settings.py文件里,在实际的开发中,对于一个项目而言,这样往往是不合适的,需要将settings配置文件拆分为几个文件,线上和线下都会使用的文件放置到base.py文件里,线上的放置在proct.py文件里,开发测试的文件放置在develop.py文件里。这样功能划分就明确了,方便我们线上线下的调试。

1)在项目同名目录下,创建一个settings的包(目录下含__init__.py的文件夹)。

2)在settings的包中分别新建3个文件:公共基础base.py(用于配置Django默认生成配置文件),develop.py(用于开发环境)、proct.py(用于生产环境)。

3)将原来的settings.py的内容复制到base.py文件中。

4)确认目录OK后,我们需要修改base.py中的时区和语言配置:

如果有类似公共部分需要修改的,则在base.py中修改即可,例如注册子应用之类的,在此就不一一举例。。

5)之后,对于线上线下不同部分,我们只要导入base.py模块,再针对不同部分进行修改即可,例如线上线下对接不同的测试数据库,我们则可以修改数据库连接:

6)修改manage.py文件,Django使用自带服务启动时需要知道settings文件的路径。

7)到上生产的时候,使用asgi.py(Django3.x中)或wsgi.py(Django2.x以下版本),则可以更改生产配置文件的路径:

以上又有个问题,如果线上线下环境切换,又要改动代码,我们可以通过设置系统环境变量来动态获取,避免修改代码:

这样通过读取系统环境变量中的LIPIN_PROFILE来控制Django加载不同的settings文件。

这样可以将原来的settings.py文件删掉!!

但是这样就会有个问题,你会发现之前好好的网页我们访问不了了,模板找不到!

这是因为之前的配置文件中,路径问题,因为我们原来的配置文件是在同名目录下,而我们现在将配置文件拆分为一个新的包,所以还要上一级目录才是我们需要的:

结语:以上就是首席CTO笔记为大家整理的关于django设置文件如何设置的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
电脑共享设置win10两台win10电脑如何共享文件 如何连接WIN10电脑的共享文件夹win10文件夹共享怎么设置 win10当两台电脑使用两台win10电脑怎么互传文件 出席人和列席人的区别 求歌名,有一句歌词好像是不带来幸福,在下一条路,女声,谢谢各位大神了... 美容早安朋友圈的文案(精选140句) word插入页码的正确方法 燕郊地区3G上网选择(看电影,玩魔兽世界) 燕郊福成一期有哪些宽带 建设银行个人网上银行证书去哪里下载? 静态网页中如何实现分层功能? RU哪个国家的缩写 ru是什么国家 ru是哪个国家的缩写 铁离子和亚铁离子在化学方程式里怎么判断? 在化学方程式中铁和亚铁怎么区分??? ru哪个国家简称 ru是那个国家的简称? ...为什么是铝化亚铁 不是fecl3吗 什么时候金属和酸反 同事的家属去世,我又有其他事情没时间去,应该怎么办 同事家里人去世,我也有事让我带班怎么办 DNF:奇迹缝纫机活动全解析,天纵云霄华丽登场! 公司里面谁家里去世了,要不要告诉别人? 地图上的地点如何删除? 燕子在家做窝寓意添丁 深圳去哪里报名工地安全员C证办理地点和办理流程有哪些 葫芦采摘时间及去皮方法 葫芦去皮方法多多 网络打印机无法连接,如何处理? 打印机无法正常连接怎么解决? 无法连接到网络打印机怎么办? 重生之十福晋作品简介 陌陌财富等级是什么 宗申摩托车官方网址 宗申三轮厂家地址 宝贝做的过敏源检测报告单,看到对好多东西都过敏,我都不知道该怎么办... 名词解释:"孤岛文学" 白皓宇第几集认出真的李慧珍 请问漂亮的李慧珍哪集白皓宇知道真相,哪集李慧珍变漂亮?谢谢。 适合高中理科生,没学过美术的,分数两三百的,读的化妆类的学校(学人物形... ...让我学理科方面的,想自学,将来想从事平面设计之类 我读理科 今年就要高考 本人喜爱设计 1诊540多分 各位能告诉我选什么... 怎么知道身份证有没有贷款 沈阳摆渡人服装设计学校好吗? ...大学是学理科的,想学学3DMAX之类的设计软件,会了的话业余时间可以赚... 焦虑症吃什么药好而且没有副作用 焦虑症吃啥药好 情人要和你分手如何挽救 谁有冰雪奇缘的资源?发给我百度云或者 邮箱,谢了! 求冰雪奇缘中文百度云。 冰雪奇缘百度云,谁有?