django如何导入静态文件路径(2023年最新整理)

导读:本篇文章首席CTO笔记来给大家介绍有关django如何导入静态文件路径的相关内容,希望对大家有所帮助,一起来看看吧。

django中怎么载入css等静态文件

尝试: urls.py中urlpatterns的设置

urlpatterns = patterns(\'\',

url(r\'^media/(?Ppath.*)$\',\'django.views.static.serve\',{\'document_root\':settings.STATIC_PATH}),

)

django如何导入静态文件路径(2023年最新整理)  第1张

django开发环境中静态资源怎么存放

其实将静态文件路径硬编码在模版中也可以正常运行,如使用href=\"/static/css/sample.css\",前提是配置好了STATIC_URL和STATIC_DIRS。

但并不推荐这么做,因为如果后来静态资源的位置发生了迁移,如使用独立服务器或者使用CDN,就要修改一大堆URL。而使用推荐的方法可以避免这个庞大的工作量,最多只需要修改STATIC_URL即可。

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 :

django 1.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前端怎么设置 静态文件路径

设置一个路径变量

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(\'\\\\\',\'/\'),

)

django 怎么配置可以获取静态文件

可以用服务器配置,js、css、img转到相应路径。也可以在url.py里加入(r\'^media/(?Ppath.*)$\',\'django.views.static.serve\',{\'document_root\': settings.STATIC_PATH}),可以在settings.py里设置也可以使用绝对路径。意思是/media/?.(js|css|img|others)的静态文件在那个路径下。

结语:以上就是首席CTO笔记为大家介绍的关于django如何导入静态文件路径的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。

以上内容为新媒号(sinv.com.cn)为大家提供!新媒号,坚持更新大家所需的互联网后端知识。希望您喜欢!

版权申明:新媒号所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,不声明或保证其内容的正确性,如发现本站有涉嫌抄袭侵权/违法违规的内容。请发送邮件至 k2#88.com(替换@) 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023-09-23
下一篇 2023-09-23

相关推荐

发表回复

登录后才能评论