如何在特定类别中创建Discord频道?

时间:2019-12-29 13:22:16

标签: python python-3.x discord.py

    name = ctx.message.author
    category = discord.CategoryChannel.id=660809715818823690
    channel = await guild.create_text_channel(str(name), overwrites=overwrites, category=category)

AttributeError: 'str' object has no attribute 'id'
我不了解category参数采用哪种数据。

3 个答案:

答案 0 :(得分:0)

我猜您可能不知道channel可能是以下情况之一:

PrivateChannel(DMChannel,GroupChannel)和GuildChannel(TextChannel,VoiceChannel,CategoryChannel)

因此,如果您使用get_channel,则不仅是针对“渠道”,还包括类别。

因此,create_text_channel所采用的类别参数为CategoryChannel类型,正如我们之前所说,我们可以使用get_channel来获得该参数:

category_channel = bot.get_channel(660809715818823690)

bot是您用于机器人实例的名称。

答案 1 :(得分:0)

没有完整的追溯,很难确定您遇到该错误的程度。但是,Guild.create_text_channel接受CategoryChannel作为其<div class="animation"> Lorem, ipsum dolor sit amet... </div>参数。

您正在将category设置为整数category
您还正在修改discord.py类本身,这是您不应该做的事情。

答案 2 :(得分:0)

如果您要为每个 Guild.create_text_channel 创建频道,您需要将 category 参数设置为一个类别,例如您可以从 message.channel.categorychannel.category(链接的解决方案适用于文本和语音通道)并且像 Harmon758 对整数所说的那样。

(不知道能不能在没有频道或消息的情况下拿到分类)