airflow.exceptions.AirflowException:初始化运算符时使用关键字参数

时间:2018-08-03 22:57:41

标签: airflow

我在Ubuntu中将1.9.2的Airflow版本与Python 2.7一起使用。我尝试继承自ParentOperator类,该类本身运行良好,并创建了一个名为ChildOperator的类。但是,当我创建一个ChildOperator实例时,我认为这里缺少一些关键字参数或将其弄乱了,并且出现了以下错误:“ airflow.exceptions.AirflowException:在初始化运算符时使用关键字参数”

这是一个简化的示例:

<html>

<head>
</head>

<body>
  <div id="four">
    <h1>Quadrant</h1>
    <table>
      <tr>
        <td><label>Enter First Number</label></td>
        <td><input type="text" id="mynumber3"></td>
      </tr>
      <tr>
        <td><label>Enter Second Number</label></td>
        <td><input type="text" id="mynumber4"></td>
      </tr>
    </table>
    <button onclick="Coordinates()">Go</button>
    <div id="f1"></div>
    <div class="f" id="f2"></div>
    <div class="f"></div>
    <div class="f"></div>
  </div>
</body>

</html>

任何想法导致此错误的原因是什么?这更多是特定于Python的问题吗?

1 个答案:

答案 0 :(得分:3)

ChildOperator的

init 函数需要具有所有关键字参数,如下所示(对于conn_id和object的前两个参数):

super(ChildOperator, self).__init__(
        conn_id=conn_id,
        object=object,
        args=args,
        s3_conn_id=s3_conn_id,
        s3_key=s3_key,
        s3_bucket=s3_bucket,
        fields=fields,
        *args,
        **kwargs
)