Я следую руководству, в котором создается дочерний объект команд. бот для запуска фоновой задачи.
Я пытаюсь реализовать команду discord.ext.commands.Greedy с косой чертой, чтобы передать список объекты discord.Member, с которыми нужно работать.
Я получаю указанную ошибку при запуске. TypeError: неподдерживаемая аннотация типа Greedy[Member]
пример кода, повторяющий мою ошибку
Код: Выделить всё
import discord
from discord.ext import commands
from discord import app_commands
class MyClient(commands.Bot):
def __init__(self, *, intents: discord.Intents):
super().__init__(command_prefix="/", intents=intents)
intents = discord.Intents.default()
intents.message_content = True
intents.members = True
client = MyClient(intents=intents)
@client.tree.command(name="slap")
async def slap(interaction: discord.Interaction, members: discord.ext.commands.Greedy[discord.Member], *, reason='no reason'):
slapped = ", ".join(x.name for x in members)
await interaction.response.send_message(f'{slapped} just got slapped for {reason}')
как мне исправить пример кода, чтобы команда косой черты запускалась с более чем одним discord.Member и выведите заданный текст.
рабочая команда должна выглядеть так
Код: Выделить всё
/slap members:@user1, @user2, @user3 reason="I am greedy"
Подробнее здесь: https://stackoverflow.com/questions/793 ... nds-greedy