Python - Добавление канала в категорию - PullRequest
1 голос
/ 08 июня 2019

Я пытаюсь создать канал, который будет создан в категории, но то, что я пробовал, не сработало

Код довольно большой, поэтому я не буду показывать все,просто добавление канала

@client.command()
@has_permissions(kick_members=True)
async def warn(ctx, member:discord.Member, *, reason=None):
 arg=reason
 author=ctx.author
 guild=ctx.message.guild
 overwritee = discord.PermissionOverwrite()
 overwrite = discord.PermissionOverwrite()
 channel = get(guild.text_channels, name='warn-logs')
 category = get(guild.category_channels, name='Multi-Logs')
 mrole = get(ctx.guild.roles, name="Multi-Galaxy")

 if category is None:
  category = await guild.create_category_channel("Multi-Logs")
  overwritee.read_messages = False
  overwritee.read_message_history = False
  overwritee.send_messages = False
  overwrite.read_messages = True
  overwrite.read_message_history = True
  overwrite.send_messages = True
  await channel.set_permissions(guild.default_role, overwrite=overwritee)
  await channel.set_permissions(mrole, overwrite=overwrite)
 if channel is None:
  channel = await guild.create_text_channel('warn-logs')
  overwritee.read_messages = False
  overwritee.read_message_history = False
  overwritee.send_messages = False
  overwrite.read_messages = True
  overwrite.read_message_history = True
  overwrite.send_messages = True
  await channel.set_permissions(guild.default_role, overwrite=overwritee)
  await channel.set_permissions(mrole, overwrite=overwrite)

Он просто создает категорию и канал отдельно друг от друга, поэтому канал не входит в категорию

1 Ответ

0 голосов
/ 08 июня 2019

Просто введите category в create_text_channel:

if channel is None:
    channel = await guild.create_text_channel('warn-logs', category=category)
    #                                                      ^^^^^^^^^^^^^^^^^
    #                                  keyword-argument––––^^^^^^^^
    #                                        your-variable––––––––––^^^^^^^^
...