Ссылка «Дополнительный оператор воздушного потока» не отображается - PullRequest
0 голосов
/ 27 октября 2019

У меня проблемы с получением дополнительных ссылок оператора для рендеринга для Airflow.

У нас есть фрагмент, подобный приведенному ниже.

class ExampleLink(BaseOperatorLink):
    def get_link(self, operator, dttm):
        return 'http://example.org'

Проблема в том, что кнопка не отображаетсяв интерфейсе Airflow. Я в настоящее время на v1.10.4, но я могу обновить, если это проблема.

Кто-нибудь знаком с использованием создания пользовательской кнопки в пользовательском интерфейсе?

Я также передаюэто в пользовательский оператор, как показано ниже


class ExampleOperator(BaseOperator):
    ui_color = '#e4f0e8'
    operator_extra_link_dict = {
        'Example Console': ExampleLink(),
    }

Любой совет или пример использования по этому вопросу высоко ценится.

Я также не вижу ошибок в журналах.

1 Ответ

0 голосов
/ 30 октября 2019

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 и не работают на старом пользовательском интерфейсе на основе Flask-admin

...