我在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的问题吗?
答案 0 :(得分:3)
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
)