zoukankan      html  css  js  c++  java
  • python的一些总结5

    上面4都是水的 恩每篇都一点知识点 用来写给不耐烦的人看。。哈哈这篇 争取不水。

    上面4篇如果 掌握 基本上是 80%常用的代码了。

    1、下面讲一下 比较常用的代码:

    macro(jinja 上的功能)
     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title></title>
     6 </head>
     7 <body>
     8 
     9 {{ test }}
    10 
    11 {# 这是注释的写法 #}
    12 {# 下面是 for 的写法  #}
    13 {% for n in alist %}
    14     {% if n >3 %}
    15         {{ n }}
    16     {% endif %}
    17 {% endfor %}
    18 
    19 {% macro testm(name) %}
    20     <input type="button" value="{{ name }}" name="">
    21 {% endmacro %}
    22 
    23 {{ testm("名字1") }}
    24 {{ testm("名字2") }}
    25 
    26 </body>
    27 </html>
    macro 通常定义一些 重复的代码 

    context_processor (flask 提供的功能)
    在后台 代码中添加
    @app.context_processor
    def process():
    def test1(name):
    return '<input type="button" value="{0}" name="">'.format(name)

    return {'test1': test1}

     前台代码 直接使用 {{ test1('名字3')|safe }} 和上面 使用 macro 是一样

    上面用到 |safe 这是 jinja 提供的 filter. 这个filter 的作用是 把无转义打印 (ps:默认情况下都会将 html js 等 转义后打印 ,因为安全)

    2、上面讲到 filter ,下面介绍下 其他 filter 

    如 int :   {{ xx|int }} 将xx 转为 int  通常 使用例如: 将10.1 转为 10 或者 {% if (xx|int)==10 %}xxxxx

    如 first {{  xxlist|first }} 可以 拿到list 中的 第一个元素

    3、自定义 filte (2种写法)

    1 @app.template_filter()
    2 def add_filter(s):
    3     return s + 1
    4 
    5 
    6 @app.add_template_filter
    7 def add_filter1(s):
    8     return s + 1

    使用 {{ 1|add_filter }}  {{ 1|add_filter1 }} 

     
  • 相关阅读:
    5、视图
    4、数据更新
    3、聚合与排序
    2、查询基础
    1、数据库和SQL
    Day-13:组合查询
    Day-12:创建高级联结
    Day-11:联结表
    Day-10:使用子查询
    Day-9:分组数据
  • 原文地址:https://www.cnblogs.com/rufus-hua/p/4702016.html
Copyright © 2011-2022 走看看