美文网首页
python——Django项目开发:配置项目/static/路

python——Django项目开发:配置项目/static/路

作者: 帅气的猪猪 | 来源:发表于2018-10-11 16:35 被阅读215次

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

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

二、项目配置

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

 STATIC_URL = '/static/'
STATICFILES_DIRS = (
# os.path.join(BASE_DIR, 'static')
os.path.join(os.path.dirname(__file__), '../static/').replace('\\', '/'),
)

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

url( r'^static/(?P<path>.*)$', 'django.views.static.serve',{ 'document_root': settings.STATIC_URL }),

(不过我经过实测,不加这一个,也可以完成静态文件的访问)
3、在html模板最上面添加:

{% load staticfiles %}  这句添加在html文件的最上面

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

<img src="{% static "imgs/bg.jpg" %}"/>

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

------------------------------------------------------------

django static文件的引入方式

 1\. 在django project中创建 static文件夹

 2.settings.py中配置要在 STATIC_URL = '/static/'  下边 

    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, 'static'), 
    ]
    上面这个输入如果报错:Your STATICFILES_DIRS setting is not a tuple or list; "
    那么就改成:STATICFILES_DIRS = [(os.path.join(BASE_DIR,'static'))]

  或
      
    STATIC_ROOT = os.path.join(BASE_DIR, 'static')

  3.前端引入
    
    方法一、   
    
        在页面的较上处写:
    
      {% load staticfiles %}
      在 link script 等src 写 :
      {%static 'xxx.css'%} 
      {%static 'xxx.js'%}

相关文章

网友评论

      本文标题:python——Django项目开发:配置项目/static/路

      本文链接:https://www.haomeiwen.com/subject/jpgbaftx.html