如何在 discord-py-slash-command 下拉列表中为项目创建自定义 ID?

How to create a custom ID for an item in a discord-py-slash-command dropdown?

我正在使用名为 discord-py-slash-command 的库在我的 discord 机器人中实现斜杠命令和下拉菜单,编码为 discord.py。

问题:

我的问题是我无法将自定义 ID 分配给不同的项目,因此我无法识别 selected 项目。使用单独的机器人事件对我不起作用。

我的代码:

我已经使用以下代码成功创建了一个基本的下拉菜单:

select = create_select(
        options=[
            create_select_option("Option 1", value="Option 1", emoji="1️⃣"),
            create_select_option("Option 2", value="Option 2", emoji="2️⃣"),
            create_select_option("Option 3", value="Option 3", emoji="3️⃣"),
        ],
        placeholder="Choose an option or two", 
        min_values=1,
        max_values=2, 
        )
    await user.send("Select options here", components=[create_actionrow(select)])

然后我使用以下代码等待 selected 项目然后发送结果:

select_ctx: ComponentContext = await wait_for_component(client, components=create_actionrow(select))
await select_ctx.edit_origin(content=f"You chose an option!")

我希望能够为顶部代码块中的每个 select 选项分配一个自定义 ID,因为为您生成的随机 ID 非常长且难以记忆,例如:

7816e661-7751-4e1b-8ab0-24b00a0537cc

我尝试过的:

我已经尝试将 custom_idid 参数添加到 select 中的每个 select 选项。当我这样做时,我收到以下错误:

TypeError: create_select_option() got an unexpected keyword argument 'custom_id'

是否只能为按钮分配自定义 ID,或者我是否在错误的位置分配了 ID?我将不胜感激任何答案或反馈。谢谢!

下拉菜单有一个 custom_id。您将它恰好放在 minmax 值之后。


Select = create_select(options = [
    create_select_option("Option 1", value="Option 1", emoji="1️⃣"),
    create_select_option("Option 1", value="Option 1", emoji="1️⃣"),
    create_select_option("Option 1", value="Option 1", emoji="1️⃣"),
        ],
        placeholder="Choose a help category",
        min_values=1,
        max_values=1,
        custom_id="helpuwu",    
    )