@astik2321

Как вывести имя пользователя после юза modal menu? pycord-discord.py?

def __init__(self, *args, **kwargs) -> None:
        super().__init__(*args, **kwargs)

        self.add_item(discord.ui.InputText(label="Сколько вам лет?"))
        self.add_item(discord.ui.InputText(label="Почему мы должны взять именно вас?"))
        self.add_item(discord.ui.InputText(label="Был ли у вас опыт в модерации?"))
        self.add_item(discord.ui.InputText(label="Откуда вы?"))
        self.add_item(discord.ui.InputText(label="Расскажитте о себе", style=discord.InputTextStyle.long))

    async def callback(self, interaction: discord.Interaction):
        embed = discord.Embed(title="Набор на эвентера")
        embed.add_field(name="Сколько вам лет", value=self.children[0].value, inline=False)
        embed.add_field(name="Почему мы должны взять именно вас?", value=self.children[1].value, inline=False)
        embed.add_field(name="Был ли у вас опыт в модерации?", value=self.children[2].value, inline=False)
        embed.add_field(name="Откуда вы?", value=self.children[3].value, inline=False)
        embed.add_field(name="Расскажите о себе", value=self.children[4].value, inline=False)
        embed.set_footer(text=f"{как тут вывести имя пользователя}")

embed.set_footer(text=f"{как тут вывести имя пользователя}")
как туда вывести имя пользователя который юзнул modal menu?
  • Вопрос задан
  • 224 просмотра
Решения вопроса 1
Lapita12
@Lapita12
Тесты, тесты?
Чтобы получить имя пользователя, который использовал modal menu, вам нужно использовать атрибут user в объекте interaction. Вот так можно выводить имя пользователя:

#Извлекаем имя пользователя
username = interaction.user.name

# Создаем embed и выводим данные пользователя
embed = discord.Embed(title="Набор на эвентера")
embed.add_field(name="Имя пользователя", value=username, inline=False)
embed.add_field(name="Сколько вам лет", value=self.children[0].value, inline=False)
embed.add_field(name="Почему мы должны взять именно вас?", value=self.children[1].value, inline=False)
embed.add_field(name="Был ли у вас опыт в модерации?", value=self.children[2].value, inline=False)
embed.add_field(name="Откуда вы?", value=self.children[3].value, inline=False)
embed.add_field(name="Расскажите о себе", value=self.children[4].value, inline=False)
embed.set_footer(text=f"Заявку оставил: {username}")


Здесь мы используем метод name, чтобы получить имя пользователя из объекта user, и затем добавляем его в footer нашего Embed.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы