前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python django - stat

python django - stat

作者头像
py3study
发布2020-01-09 11:29:20
7320
发布2020-01-09 11:29:20
举报
文章被收录于专栏:python3python3

static文件相关操作涉及: a. 文件位置与访问路径映射 b. setting.py与static相关配置

STATIC_URL STATIC_ROOT STATICFILES_DIRS

c. html中对于static文件引用方式 d. python manage.py collectstatic



1. 开发环境-目录结构
python django - static文件处理与线上部署测试
python django - static文件处理与线上部署测试
2. setting.py 设置
代码语言:javascript
复制
STATIC_URL = '/static/'
# STATIC_ROOT= os.path.join(BASE_DIR,'static')
STATICFILES_DIRS=(
    os.path.join(BASE_DIR,'static'),
)

STATIC_URL中设定的为浏览器实际访问地址。 STATICFILES_DIRS 对应文件路径

3. 开发环境-访问测试
python django - static文件处理与线上部署测试
python django - static文件处理与线上部署测试
4. html引用(django jinja2模版)
4.1 硬地址直接使用

html head部分

代码语言:javascript
复制
<head>
    <meta charset="UTF-8">
    <title>Title</title>
<script src="/static/appcms/jquery-3.3.1.js"></script>
    <script>
        $(document).ready(function () {
            $("h1").click(function () {
                $("h1").hide()
            })
        })

    </script>

</head>
4.2 引用使用
代码语言:javascript
复制
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    {% load staticfiles %}
    <script src="{% static 'appcms/jquery-3.3.1.js' %}"></script>
    <script>
        $(document).ready(function () {
            $("h1").click(function () {
                $("h1").hide()
            })
        })

    </script>

</head>
5. 线上部署问题

当需要同时部署admin时

运行命令收集static文件 python manage.py collectstatic

此时报错

python django - static文件处理与线上部署测试
python django - static文件处理与线上部署测试
修改setting.py文件
代码语言:javascript
复制
STATIC_URL = '/static/'
STATIC_ROOT= os.path.join(BASE_DIR,'static')
# STATICFILES_DIRS=(
#     os.path.join(BASE_DIR,'static'),
# )
再运行 python manage.py collectstatic

完成后“static_root”即static目录,产生其他其他项目的static文件夹(含内容)

python django - static文件处理与线上部署测试
python django - static文件处理与线上部署测试
收集完成后改回配置,注释掉static_root
代码语言:javascript
复制
STATIC_URL = '/static/'
# STATIC_ROOT= os.path.join(BASE_DIR,'static')
STATICFILES_DIRS=(
    os.path.join(BASE_DIR,'static'),
)
程序打包,上传到服务器,测试通过
python django - static文件处理与线上部署测试
python django - static文件处理与线上部署测试
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-08-30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 开发环境-目录结构
  • 2. setting.py 设置
  • 3. 开发环境-访问测试
  • 4. html引用(django jinja2模版)
    • 4.1 硬地址直接使用
      • 4.2 引用使用
      • 5. 线上部署问题
        • 运行命令收集static文件 python manage.py collectstatic
          • 修改setting.py文件
            • 再运行 python manage.py collectstatic
              • 收集完成后改回配置,注释掉static_root
              • 程序打包,上传到服务器,测试通过
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档