Airflow未对模板字段进行评估的错误通常是由于模板字段中包含了不合法的字符导致的。根据错误信息,模板字段的键只能由字母数字字符、短横线、点和下划线组成。
下面是一个解决方法的代码示例:
from airflow import DAG
from airflow.operators.python_operator import PythonOperator
def my_task(ds, **kwargs):
# 你的任务逻辑
pass
with DAG('my_dag', description='示例DAG', schedule_interval='0 0 * * *', start_date=datetime(2022, 1, 1), catchup=False) as dag:
task = PythonOperator(
task_id='my_task',
provide_context=True,
python_callable=my_task,
op_args=[{{ ds }}],
op_kwargs={},
)
task
在上述代码中,op_args
参数用于传递模板字段的值,{{ ds }}
是一个Airflow的内置模板字段,表示当前执行的日期。
请确保模板字段的键只包含字母数字字符、短横线、点和下划线,避免使用其他特殊字符,以避免出现该错误。