Как создать селект меню в котором будут все участники дискорд сервера?
Я хочу сделать так, допустим есть команда !send, которая отправляет селект меню, и мне нужно чтобы при нажатии на это меню, в его опциях выводились все участники сервера с возможностью их поиска. Даже если больше 25 опций. Что можно сделать? Видел, что эта реализация возможна, но сам повторить не могу
Ответы (1 шт):
Автор решения: q r t s
→ Ссылка
Для использования данного меню будем использовать discord.ui.UserSelect. Создадим для удобства класс Select_Menu в который и поместим UserSelect:
class Select_Menu(discord.ui.UserSelect):
def __init__(self):
super().__init__(placeholder="Выберите пользователя")
async def callback(self, interaction: discord.Interaction):
return # Продолжение кода
Теперь отправим это в сообщении ответом на команду !send:
@client.command()
async def send(ctx):
view = discord.ui.View()
view.timeout = None
view.add_item(Select_Menu()) #Помещаем наш класс
await ctx.send("Кого выберем?", view=view) #Отправляем сообщение с данным меню
Подробнее о SelectMenu можно узнать на оф. сайте.