zoukankan      html  css  js  c++  java
  • jinja 多值合并

    示例
    {% for node in groups["db"] %}
    {{ node | join("") }}:5672
    {% if not loop.last %}
    {% endif %}
    {% endfor %}

    解释:

    第一行代码中groups为ansible的内置变量。同类型内置变量有:

    parameter description
    hostvars   主机变量名
    inventory_hostname 当前ansbile可识别的hosts
    group_names 当前主机的所属组
    groups 字典数组,数组名,包括:{"all":[...],"web":[...]}

    第二行使用python内置join函数格式化代码输出。

    第三行 loop.last为 jinja2.8版本的内置变量,同类型及功能如下。

    • loop.index: 当前循环的迭代次数(默认从1开始)
    • loop.index(): 当前循环的迭代次数(默认从0开始)
    • loop.revindex: 到循环结束需要迭代的次数(默认从1开始)
    • loop.revindex(): 到循环结束需要迭代的次数(默认从0开始)
    • loop.first: 如果是第一次迭代,为True
    • loop.last: 如果是最后一次迭代,为True
    • loop.length: 序列中的项目数
    • loop.depth: 显示渲染的递归循环的层级数(默认从1开始)
    • loop.depth0: 显示渲染的递归循环的层级数(默认从0开始)
    • loop.cycle: 在一串序列间期取值的辅助函数
    在尝试学习新的语言之前先理解这门语言的设计原理能够让你在探索这门新语言时保持一个清醒而且开发的状态。
  • 相关阅读:
    使用git笔记
    linux 进程管理的一些命令使用
    [zz]XML DOM 教程
    [zz]std::string 和 c 的字符串
    [zz]grep 命令的使用
    [zz]XercesC++ 参考
    [zz]Windows WordPress本地安装教程
    今天调出来的关于cello的bug
    shell 编程的一些问题
    关于java中边界值校验的问题
  • 原文地址:https://www.cnblogs.com/jackchen001/p/6684033.html
Copyright © 2011-2022 走看看