python-django静态文件路径配置

  在学习Python django中遇到静态文件路径找不到的问题

1.一般情况下,用pycharm创建django工程djangotest时,工程目录djangtest会自动添加templates文件夹;即工程目录层级如下图所示

 

 

 

 

2.templates目录:用于存放静态html模板,工程项目中共用的html文件

  • django如何识别该目录?  通过settings.py文件设置进行识别。列表TEMPLATES[0]{'DIRS'}  存储templates目录

         

 

  • 如何识别该目录(app/views.py怎么识别templates目录下的html文件)    
    #代码app/views.py中
    from django.shortcut import render    #引入render模块
    def app(request):
      ...
      return render(request,'a.html',locals()) #假设a.html在templates目录下;第二个参数是经过Django封装,找到templates/a.html渲染文件

 a.html:django通过settings.TEMPLATES引入的 

  • 如何证明上述是django内置引入a.html;利用Template和Context对象
    from django.shortcut import HttpResponse
    import os,datetime
    from django.template import Template,Context
    from djangotest import settings
    def
    app(request):
    t=datetime.datetime.now()
       path=settings.TEMPLATES[0]{'DIRS'}
       path=os.path.join(path,'a.html')
    fs=open(path,'r')
    data=fs.read()
    temp=Template(data)
    c=Context({'time':t})
    h=temp.render(c)
    return HttpResponse(h)

    该代码与上述代码利用rende函数返回的结果一样;说明render的文件模板是在templates目录下的a.html文件

3.static目录:存放css和js静态文件

前端代码用别名/static/代替绝对路径

 

4.conda config --set auto_activate_base false

posted @ 2019-10-28 16:17  雏凤飞翔  阅读(799)  评论(0)    收藏  举报