美文网首页
视图模板文件的加载、静态文件的加载

视图模板文件的加载、静态文件的加载

作者: 想旅游的程序员 | 来源:发表于2018-10-08 10:36 被阅读0次

    [TOC]

    视图模板文件的加载

    使用普通的字符串django.http.HttpResponse

    之前使用的就是,return HttpResponse("一些html的操作"),不再赘述

    响应网页视图(需要会用)

    Django的模板存储位置是固定的===templates

    1. 在子模块下创建一个templates文件夹,用来储存html的样式。(尽量把不同子模块的样式储存在不同的文件夹内)
    2. 在视图处理函数中,我们重新定义返回函数
    #导入一个解析模板的loader对象
    from django.template import loader
    def view2(request):
        #使用loader加载界面,注意路径问题
        #loader会自动去templates文件夹下查询页面
        #temp为一个模板对象
        temp = loader.get_template("blog/login.html")
        #context是上下文参数,是以字典形式传递参数
        context = {"msg":"你好啊,请登录"}
        #把内容渲染到模板对象上
        return HttpResponse(temp.render(context,request))
    

    同时还需要在login.html中加入{{msg}}(即mustache语法)使得context内容加载到网页中

    网页视图快捷操作方式(重点)

    通过响应对象渲染返回的网页,功能非常强大,但是编码略显复杂。Django框架作为一个功能强大的web框架,不会让开发人员做大量重复的工作,所以已经将HTML网页的渲染返回进行了快捷的处理,方便了开发人员的使用。

    #引入需要的render对象
    from django.shortcuts import render
    
    def view3(request):
        #render函数可以将视图快速返回
        return render(request,"blog/login.html",{"msg":"这是快捷方式的操作"})
    

    在主目录下模板的加载

    1. 在主目录下创建一个存放模板文件(html文件)的目录。
    2. 把这个目录的路径告诉setting文件中的修改TEMPLATE中的内容,'DIR':os.path.join(BASE_DIR,temp)temp为主目录下存放模板文件的文件夹名称

    注:模板文件的加载顺序:先扫描主目录,再扫描子模块,即主目录和子模块中都有模板文件时,子模块的模板文件不生效

    静态文件的加载

    子模块下

    1. 在子模块下,创建一个static来存储静态文件(static中可以包括css、js、img)
    • 在js中包含app和lib
      * app存放自己创建的文件
      * lib存放第三方文件,如:bootstrap、jquery
    1. 在模板文件中(template中的html文件)导入css或者js

    主目录下(和子模块同级)

    和子模块类似,唯一不同的是:在setting配置文件中的末尾对静态文件的位置进行配置

    STATICFILES_DIRS = [
        os.path.join(BASE_DIR,"static"),
    ]
    

    相关文章

      网友评论

          本文标题:视图模板文件的加载、静态文件的加载

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