• The Django Book


    模板(相应)使用的几种方式:

    1.使用HttpResponse返回字符串HTML

    from django.http import HttpResponse
    def current_datetime(request):
        now = datetime.datetime.now()
        html = "<html><body>It is now %s.</body></html>" % now
        return HttpResponse(html)

    2. 使用普通模板

    from django.http import HttpResponse
    from django.template import Template, Context
    from django.template.loader import get_template
    def current_datetime(request):
        now = datetime.datetime.now()
        t = Template('<html><body>It is now {{ current_time }}.</body></html>')
        c = Context({'current_time': now})
        html = t.render(c)
        return HttpResponse
        return HttpResponse(htm;)

    3.使用文件模板

    from django.http import HttpResponse
    from django.template import Template, Context
    def current_datetime(request):
        now = datetime.datetime.now()
        t = get_template('current_datetime.html')
        c = Context({'current_time': now})
        html = t.render(c)
        return HttpResponse(html)

    4.简化文件模板render_to_response

    form django.shortcuts import render_to_response
    def current_datetime(request):
        now = datetime.datetime.now()
        return render_to_response('current_datetime.html', {'current_time': now})

    5.简化传入变量;注:会传入所有的局部变量

    from django.shortcuts import render_to_response
    def current_datetime(request):
        current_time = datetime.datetime.now()
        return render_to_response('current_datatime.html', locals())
    

    include模板标签
    {% include template_name %} template_name基本上是字符串,也可为变量

    模板继承 
    {% extends template_name %}
    1.必须为第一个模板标记
    2. 父模板中标签{% block %}尽量多
    3. {% block.super %} --还不知道如何使用
    4. template_name基本上是字符串,也可为变量

    模板加载顺序:
    1.'django.contrib.staticfiles.finders.FileSystemFinder', TEMPLATE_DIRS中定义的路径
    2.'django.contrib.staticfiles.finders.AppDirectoriesFinder', 各个应用下templates文件夹下

    其他:
    1.文件中使用__file__为该python脚本的路径+文件名; 在控制台无效
    2. locals():局部变量字典集合

  • 相关阅读:
    CENTOS7下安装REDIS
    目录结构和文件路径
    bash特性
    (十六)MySQL集群galera实现
    (十五)mysql中间件MyCAT实现
    (4)三剑客之awk
    (十四)基于GTID的主从复制
    (十三)MySQL主从复制
    (3)三剑客之sed
    (十二)MySQL逻辑备份mysqldump
  • 原文地址:https://www.cnblogs.com/yangqionggo/p/3400617.html
Copyright © 2020-2023  润新知