Не пойму, как нормально реализовать вывод текста? Disnake
В общем, есть такой код:
async def report(inter: disnake.AppCmdInter, member: disnake.Member, text: str):
report_channel = bot.get_channel()
author = inter.author
embed = disnake.Embed(
title="** Жалоба на пользователя! **",
description=f"**Жалоба от:** {author.mention}\n**Жалоба на:** {member.mention}\n\n**Описание жалобы:** \n" + " ".join(
text),
timestamp=timeNow,
colour=disnake.Colour.from_rgb(255, 0, 0))
await report_channel.send(embed=embed)
await inter.send("Жалоба успешно отправлена!", ephemeral=True)
await asyncio.sleep(1)
Когда в функции, для записи текста стоит *args, вместо text: str то работает всё идеально:
Жалоба на пользователя!
Жалоба от:
Жалоба на:
Описание жалобы:
hello world
Сегодня, в 22:42
В противном случае, при text: str:
Жалоба на пользователя!
Жалоба от:
Жалоба на:
Описание жалобы:
h e l l o w o r l d
Сегодня, в 22:42
Что делать?
Ответы (1 шт):
Автор решения: KindKing
→ Ссылка
Я решил свою же проблему!
Всего лишь-то, надо было вместо " ".join(text), написать text :)
Кому надо, система репортов на disnake:
import disnake
import asyncio
from disnake.ext import commands
from datetime import datetime
@bot.slash_command(name = "report", description = "Отправляет жалобу на участника")
async def report(inter:disnake.AppCmdInter, member: disnake.Member, text: str):
await inter.channel.purge(limit = 1)
report_channel = bot.get_channel(1083015900434796645) #id канала для репортов заменить на свой
author = inter.author
embed = disnake.Embed(
title = "** Жалоба на пользователя! **",
description = f"**Жалоба от:** {author.mention}\n**Жалоба на:** {member.mention}\n\n**Описание жалобы:** \n" + text,
timestamp = timeNow,
colour = disnake.Colour.from_rgb(255, 0, 0))
await report_channel.send(embed = embed)
await inter.send("Жалоба успешно отправлена!", ephemeral = True)
await asyncio.sleep(1)