zoukankan      html  css  js  c++  java
  • 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():局部变量字典集合

  • 相关阅读:
    Flex随笔
    Flex中实现类似Javascript的confirm box
    正则表达式
    MySQL存储过程
    cvc-complex-type.2.4.a: Invalid content was found starting with element
    Spket在Eclipse/MyEclipse下的安装和配置(图文教程)
    关于安装linux时要怎么分区的考虑的參考方式?
    BZOJ 1975 SDOI2010 魔法猪学院 A*k短路
    使用scipy进行聚类
    Android 下拉刷新上拉载入效果功能
  • 原文地址:https://www.cnblogs.com/yangqionggo/p/3400617.html
Copyright © 2011-2022 走看看