【问题标题】:Airflow Jinja Templating气流 Jinja 模板
【发布时间】:2020-10-06 16:13:26
【问题描述】:

尝试使用 Airflow 中的 Jinja 模板在 Python 中引用变量以打印变量值

job_id = 15
print("{{ params.job_id }}")

但是,它正在打印:

{{ params.job_id }}

我应该如何触发正确的渲染?

【问题讨论】:

  • 请分享你的 DAG 代码

标签: python jinja2 airflow


【解决方案1】:

我认为你根本没有使用 jinja。这是一个如何使用它的示例:

from jinja2 import Tempate

job_id = 15
template = Template("{{ params.job_id }}")

# Method 1: pass values as a dict
params = {'job_id': job_id}
print(template.render({'params': params}))

# Method 2: pass values as keyword arguments
print(template.render(params={'job_id': job_id},))

# Method 3: one line
print(Template("{{ params.job_id }}").render({'params': {'job_id': job_id}}))

您可以在docs(当前版本为 2.11.x)中了解有关 Jinja 模板的更多信息

【讨论】:

    猜你喜欢
    • 2020-05-02
    • 2022-07-01
    • 1970-01-01
    • 2021-02-06
    • 1970-01-01
    • 2022-11-13
    • 2020-01-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多