我在获取额外的操作员链接以渲染Airflow时遇到问题。
我们下面有一个这样的代码段。
class ExampleLink(BaseOperatorLink):
def get_link(self, operator, dttm):
return 'http://example.org'
问题在于该按钮未在Airflow UI中呈现。我目前正在使用v1.10.4,但是如果这是问题,我可以进行更新。
是否有人熟悉在UI中创建自定义按钮的用法?
我也将其传递给自定义运算符,如下所示
class ExampleOperator(BaseOperator):
ui_color = '#e4f0e8'
operator_extra_link_dict = {
'Example Console': ExampleLink(),
}
对此表示任何建议或示例用法。
我在日志中也没有看到任何错误。
答案 0 :(得分:0)
OperatorLink应该定义如下:
class ExampleLink(BaseOperatorLink):
name = "example"
def get_link(self, operator, dttm):
return 'http://example.org'
上面的name
将显示在按钮上。
您需要将以下内容传递给自定义类:
class ExampleOperator(BaseOperator):
ui_color = '#e4f0e8'
operator_extra_links = {
'Example Console': ExampleLink(),
}
注意:操作员链接仅适用于RBAC UI,不适用于基于Flask-admin的旧UI