Slack Bolt Python: как сделать поле ввода в модальном режиме необязательным?

#slack #slack-api #slack-block-kit

Вопрос:

Я использую модальный для сбора данных. Я открыл представление с помощью следующего кода:

 view = {
    "type": "modal",
    "title": {
        "type": "plain_text",
        "text": "My App",
        "emoji": True
    },
    "submit": {
        "type": "plain_text",
        "text": "Submit",
        "emoji": True
    },
    "close": {
        "type": "plain_text",
        "text": "Cancel",
        "emoji": True
    },
    "blocks": [
        {
            "type": "input",
            "element": {
                "type": "plain_text_input",
                "action_id": "plain_text_input-action"
            },
            "label": {
                "type": "plain_text",
                "text": "Please leave feedback here",
                "emoji": True
            }
        }
    ]
    }
slack_client.views_open(trigger_id=body['trigger_id'],view=view)
 

введите описание изображения здесь

Я хочу сделать ввод текста необязательным, то есть, даже если пользователь оставляет поле ввода пустым, он/она все равно может отправить модальный. Может ли это быть реализовано?

Ответ №1:

Вы можете добавить "optional": true в качестве свойства блока ввода.

 "blocks": [
        {
            "type": "input",

            "optional": true,

            "element": {
                "type": "plain_text_input",
                "action_id": "plain_text_input-action"
            },
            "label": {
                "type": "plain_text",
                "text": "Label",
                "emoji": true
            }
        }
    ]